[go: up one dir, main page]

forc-wallet 0.1.3

A forc plugin for generating or importing wallets using BIP39 phrases.
# forc-wallet

A forc plugin for managing Fuel wallets.

## Quickstart

### Installation through fuelup (recommended)

`forc-wallet` is packaged alongside the default distributed toolchains when installed using
[fuelup](https://github.com/fuellabs/fuelup). If you have the `latest` toolchain installed,
you should already have `forc-wallet` available:

```console
$ fuelup toolchain install latest
$ forc-wallet --version
forc-wallet 0.1.2
```

For usage in [custom toolchains](https://fuellabs.github.io/fuelup/master/concepts/toolchains.html#custom-toolchains):

```sh
fuelup component add forc-wallet
```

### Installation through cargo

Otherwise, you may use cargo:

```sh
cargo install forc-wallet
```

### Initialize

Before creating accounts and signing transactions with them you need to initialize a new HD wallet. To do so:

```sh
forc-wallet init
```

This will require a password for encyrpting the wallet. After the initialization is done you will be given the mnemonic phrase of the wallet.

You can also initialize a wallet with your existing mnemonic phrase by using `forc-wallet import`.

### Create an account

To create an account for the initialized wallet, you can run:

```sh
forc-wallet new
```

This will require your wallet password (the one that you choosed in the initialization step). This will always derive the next account.

### Sign a transaction

To sign a transaction, you need to have the transaction ID. You can generate a transaction and get its ID using `forc-client`. Signing the transaction once you have the ID is simple:

```sh
forc-wallet sign <transaction_id> <account_index>
```

## Other useful commands

### List accounts

To list all accounts derived so far:

```sh
forc-wallet list
```

### Get address of an account

To retrieve the address of a specific account, you can use:

```sh
forc-wallet account <account_index>
```

### Get private key of an account

To retrieve the private key of a specific account, you can use:

```sh
forc-wallet export --account-index <account_index>
```

### Initialize from existing mnemonic phrase

To initialize a new HD wallet from an existing mnemonic phrase:

```sh
forc-wallet import
```