@substrate/light v0.3.32
Lichen (working title, previously "Substrate Light UI")
Lichen is a light-client-based, in-browser wallet for Substrate.
The Light UI is meant to be an intuitive interface for beginner users to easily interact with various Substrate chains. It is provided in two forms:
- A Chrome/Firefox browser extension
- A desktop application, built with Electron
Both provide the same functionalities and use the same UI, feel free to choose the medium that suits you best.
A very alpha version of the browser extension can be found in the releases page: https://github.com/paritytech/substrate-light-ui/releases/tag/v0.3.0.
You can also check out the master
branch and build from source.
Overview
As of v0.3.0, the main functions are as follows:
- Identity management - manage accounts and addresses, including ability to create, edit, restore, backup, and forget them.
- Transfer balance - send and receive funds in the currency of the relevant substrate chain.
- Embed a light client in a browser extension, and let Light UI be the user interface of this extension.
And here is a rough roadmap of what's coming next (see the v1-MVP
milestone for details):
- Handle changing provider, chain spec and light client WASM blob.
- Provider injection inside dapps.
- Improve overall beginner-friendliness (e.g. #67).
Build from sources
Dependencies
Make sure you have yarn >= 1.13.0 and nodejs >= 10.10.0. Then run
git clone https://github.com/paritytech/substrate-light-ui
cd ./substrate-light-ui
yarn install
Run the Browser Extension
yarn build:extension
Then install the extension:
- Chrome:
- go to
chrome://extensions/
- ensure you have the Development flag set
- "Load unpacked" and point to
packages/extension-app/build
- if developing, after making changes - refresh the extension
- go to
- Firefox:
- go to
about:debugging#addons
- check "Enable add-on debugging"
- click on "Load Temporary Add-on" and point to
packages/extension-app/build/manifest.json
- if developing, after making changes - reload the extension
- go to
Run the Electron App
For now, you need to bundle a Substrate node manually into the Electron app. To do so, first build a Substrate node for your platform (note: it can of course be a Polkadot/Kusama node, or any other Substrate node), and copy it as ./packages/electron-app/static/substrate
:
cp /path/to/polkadot ./packages/electron-app/static/substrate
Then run:
yarn prod:electron
The building might take some time, but you should see an Electron application after a while.
Troubleshooting: If it hangs on a white screen in Electron even though it has compiled and has been syncing for a long time, then simply choose 'View > Reload' (CMD + R on macOS) from the Electron menu.
Contributing
We welcome any and all contributions whether it is in the form of raising an issue, filing a PR, or participating in the discussions. Please read the Contributing Docs first.
Run with Hot-Reloading
If you would like to run this project with hot-reloading, use the following commands:
yarn start:ui
: If you would only like to modify the UI, run this command and visit http://localhost:3000yarn start:electron
: Run the Electron app with hot reloading
4 years ago