Skip to content

Latest commit

 

History

History

README.md

IOTA Wallet

A Chrome extension wallet for IOTA.

Set Up

Requirements: 20.0.0 or later.

Dependencies are managed using pnpm. You can start by installing dependencies in the root of the iota repository:

$ pnpm install

All pnpm commands below are intended to be run in the root of the iota repo.

Build in watch mode (dev)

To build the extension and watch for changes run:

pnpm wallet dev

Optionally to enable the whole set of features (e.g Balance Finder) you may also run an apps-backend instance:

pnpm apps-backend dev

You can also run both the wallet and apps-backend in one single command with:

pnpm wallet-dev

This will build the app in the dist/ directory, watch for changes and rebuild it. (Also runs prettier to format the files that changed.)

Environment Variables

You can config default network and RPC endpoints by copying sdk/.env.defaults and rename it to sdk/.env.

For example, to change the default network from localnet to testnet, you can change DEFAULT_NETWORK = 'localnet' to DEFAULT_NETWORK = 'testnet'.

Building the wallet

To build the app, run the following command:

pnpm wallet build

The output directory is the same dist/, all build artifacts will go there

Install the extension to Chrome

After building the app, the extension needs to be installed to Chrome. Follow the steps to load an unpacked extension and install the app from the dist/ directory.

Testing

pnpm wallet test

To run end-to-end localnet test

Start validators locally:

cargo run --bin iota-localnet start --force-regenesis --with-faucet

In a separate terminal, you can now run the end-to-end tests:

pnpm --filter iota-wallet playwright test

Useful alternatives for running Playwright tests

Run tests in debug mode

pnpm --filter iota-wallet playwright test --debug

Open the Playwright Test UI to analyze and run tests interactively

pnpm --filter iota-wallet playwright test --ui