Skip to content

Commit

Permalink
docs: initial docs
Browse files Browse the repository at this point in the history
  • Loading branch information
bryanchriswhite committed Apr 22, 2022
1 parent ecaf250 commit 0c72eea
Show file tree
Hide file tree
Showing 6 changed files with 181 additions and 0 deletions.
50 changes: 50 additions & 0 deletions docs/account_management.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@

_NOTE: in some contexts, the term "account", refers to an address that has (ever) had a balance (and therefore state on-chain). In this context, it is not necessary for an "account" to have a balance, for it to be imported, for example._

## Switching accounts

Clicking the account icon (**TODO: icon here**) in the top right corner of the dashboard will navigate to the account selection screen.

## Creating a new account

From the [account selection screen](#switching-accounts), click the "+ Add Account" button to open the add account page.
Click on the "Create new account" button.
The next page generates either a 12 or 24 word long mnemonic [seed](TODO: lnk me!). It has buttons to choose the length and a field for account name.
Click on the "Next" button.
The next page contains a button for each word from the mnemonic which was generated in the previous step.
The buttons must be clicked in the order matching the mnemonic to complete account creation.

## Importing an existing account

#### Mnemonic / Private Key

From the [account selection screen](#switching-accounts), click the "+ Add Account" button to open the add account page.
Click on the "Import existing account" button.
The next page will ask for the ["seed"](TODO: link me! - basics?), which can be in either the mnemonic (set of words) or private key (hexidecimal), and the desired account name.
It is preferable (and likely more convenient) to use the mnemonic when possible because [hierarchical deterministic keys/addresses](TODO: link me! - BIP44 / BIP5X?) cannot be derived from the private key format.

#### Hardware wallet

_NOTE: currently only [ledger](https://www.ledger.com/) hardware wallets are supported_

From the [account selection screen](#switching-accounts), click the "+ Add Account" button to open the add account page.
Click on the "Import ledger" button.
The next page will ask for the account name.
Click the "Next" button and follow the instructions in the popup to connect with the ledger.

## Removing

From the [account selection screen](#switching-accounts), click the ellipsis icon (three dots, "...") to open the context menu.
Click on "Delete Account".
On the next page, enter your wallet password, note the warning about backing up and take the opportunity to do so (or ensure a viable one exists) if you haven't already.
Click "Confirm" to remove the account from your wallet.

## Migrating from ETH

ERC20 FET staked prior to the transition to a cosmos-sdk based ledger was migrated (via genesis) to native network accounts which correspond to the private key used to stake on ethereum.
These migrated accounts are accessible by transforming the original ethereum keypair into a native fetch keypair and address.

Copy/paste the private key of the ethereum account which staked the ERC20 FET into the "private key" textarea.
Enter an account name.
Click "next".

13 changes: 13 additions & 0 deletions docs/deposit.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
## How to top up your account

To transfer funds to the active account you will need to copy its address to the sending wallet or application.

Clicking on the account address towards the top of the dashboard (below the account name) will copy it to the clipboard. This address can be used to send supported tokens using the (native) fetch network.

Clicking on the "Deposit" button opens a modal with a QR code which contains the address of the active account.

## Troubleshooting

If your origin wallet says that the address (which should start with the word "fetch") is invalid, it is probably expecting an ethereum address (beginning with "0x") and is most likely trying to send [ERC20 FET](TODO: link me!).
In this case, you need to use the [token bridge](https://token-bridge.fetch.ai/) to swap your ERC20 FET for native FET.

38 changes: 38 additions & 0 deletions docs/getting_started.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
## Intro

Fetch.ai's fork of the Keplr browser extension wallet by [chainapsis](https://github.com/chainapsis), which is designed to act as a generic wallet software for blockchains built using the Cosmos-SDK and to support the inter-blockchain communication (IBC) protocol.

#### Benefits:

- Private keys are stored locally. This removes the friction and risk of webpages having to manage user private keys safely and securely.
- As the user's private key is not managed by the website, users do not have to worry about the level of security of the website. The user only has to trust the security guarantees of Keplr, and freely interact with various web applications as they wish (and verify the contents of the transaction).
- Keplr can easily connect to libraries such as CosmJS, simplifying the process of connecting webpages to blockchains.

Further information on the Keplr extension wallet can be found at the base repo.

## How to get

Install the [Fetch.ai Network Wallet](https://chrome.google.com/webstore/detail/fetchai-network-wallet/ellkdbaphhldpeajbepobaecooaoafpg) extension from the Chrome web store.

## Requirements

Recent version of Chrome (or [based on chromium](https://en.wikipedia.org/wiki/Chromium_(web_browser)#Browsers_based_on_Chromium))

## Version

![chrome web store version svg](https://img.shields.io/chrome-web-store/v/ellkdbaphhldpeajbepobaecooaoafpg)

## First-time use

The first time you open the wallet, a page will open in a new tab with a set of buttons to create an account:

- [Create a new account](./account_management.md#creating-a-new-account)
- [Import existing account](./account_management.md#existing-account)
- [Import ledger](./account_management.md#hardware-wallet)
- [Migrate from ETH](./account_management.md#migrating-from-eth)

After account creation is complete the dashboard will be accessible by clicking on the extension icon in the browser.

## How to contribute

[GitHub repository](https://github.com/fetchai/keplr-extension)
38 changes: 38 additions & 0 deletions docs/send_tokens.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
(how to use medium article)

## Native network transfer

From the dashboard, click on the "Send".
Enter the recipient address.
Select the type of token to send.
Enter an amount to send.
Click the "Send" button.
Click the "Approve" button.

## IBC transfer

_NOTE: In order to send IBC transactions, the "Show Advanced IBC Transfers" setting must be toggled on.
To navigate to the settings page from the dashboard, click on the hamburger menu (top-left).
Then click on "Settings"._

Ensure that the desired origin network is selected on the dashboard (top-center).
If the origin network supports IBC, an "IBC Transfer" section will be visible towards the bottom of the dashboard.
Click the "Transfer" button in the "IBC Transfer" section.

Enter the recipient's address.
Select the type of token to send.
Enter the amount to send.
Click "send".

#### First-time origin/destination transfer

Before transferring between any given origin and destination combination for the first time, IBC channels must be configured in the wallet.

_ NOTE: Future versions of the wallat may simplify or remove this configuration altogether for known "official" channels.
See [Fetch Network -> IBC](TODO: link me!) documentation for more details on the current channels we officially support._

Click the "Select Chain" drop-down.
Click "+ New IBC Transfer Channel".
Select the **destination** chain and enter the **source** channel ID (e.g. "channel-100").
Click "Save".

10 changes: 10 additions & 0 deletions docs/stake.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
## Intro

Clicking the "Stake" button on the dashboard should open the [ledger explorer]() in a new tab.
See [ledger explorer staking docs](TODO: lnk me! - point to staking under explorer (how to stake using; medium article)) for more information.

## Claim rewards

If the active account has delegated tokens, a "Pending Staking Reward" section should appear above the "Stake" section on the dashboard. Clicking the "claim" button will generate a transaction which the wallet will then ask you to approve which will distribute all the account's rewards to its balance.

To claim rewards from validators individually see the [ledger explorer staking documentation](TODO: link me!).
32 changes: 32 additions & 0 deletions mkdocs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
site_name: LedgerExplorer
site_url: https://docs.fetch.ai/ledger-explorer
site_description: Everything you need to know about the ledger explorer.
repo_url: https://github.com/fetchai/ledger-explorer
site_author: [email protected]

theme:
name: material
logo: images/logo.png
favicon: assets/images/favicon.ico
feature:
tabs: true
custom_dir: custom_theme

nav:
- Getting Started: 'getting_started.md'
- Account Management: 'account_management.md'
# - Switch accounts: 'switch_account.md'
# - Create a new account: 'new_account.md'
# - Import existing account: 'import_account.md'
# - Migrate ETH: 'migrate_eth.md'
- Send Tokens: 'send_tokens.md'
- Deposit: 'deposit.md'
- Stake: 'stake.md'

extra_css:
- css/style.css

markdown_extensions:
- admonition
- pymdownx.superfences
- pymdownx.highlight

0 comments on commit 0c72eea

Please sign in to comment.