Skip to content

Beginner-friendly user interface optimized for the Substrate light client

License

Notifications You must be signed in to change notification settings

polkadotpioneer/substrate-light-ui

 
 

Repository files navigation

license Build Status Dependabot Status

Substrate Light UI

Light client focused user interface for the Polkadot and Substrate networks.

The Light UI is meant to be an intuitive interface for beginner users to easily interact with the main components of various Substrate chains.

Linux and Windows binaries are planned, but need more time. For Linux and Windows users, please build the project manually for now.

Overview

As of v0.1.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.

And here is a rough roadmap of what's coming next (see the 0.2.0 milestone for details):

  • Staking/Nominating/Voting democracy - stake tokens, nominate validators, and vote for proposals regarding the the current chain (see #62).

  • Light UI will be bundled with a light client - it won't rely on a remote node.

  • Improve overall beginner-friendliness (e.g. #67)

And finally, here are some mid/long-term ideas we would like to explore with Light UI:

  • Embed a light client in a browser extension, and let Light UI be the user interface of this extension.

Build from sources

Dependencies

Make sure you have yarn >= 1.13.0 and nodejs >= 10.10.0.

For now, you also need to have a Substrate node on your local machine. Before running the commands below, you need to:

  • either run the substrate node beforehand (see Run Substrate Locally),
  • or copy it into ./packages/electron-app/static, and Electron will take care of running it.

Clone this repo

git clone https://github.com/paritytech/substrate-light-ui
cd ./substrate-light-ui
yarn install

Build this repo and run

yarn electron

Build binaries

This command takes more time than the previous, but it'll produce a fully standalone binary.

yarn package

Run with live reload for development

yarn start

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.

Run Substrate Locally (https://docs.substrate.dev/)

In development it can be useful to have a local dev instance of Substrate running. You can do this by running:

curl https://getsubstrate.io -sSf | bash

to get the latest Substrate (it is a fast moving project and things break a lot so if you find things are breaking on master, make sure you're not running a very outdated version).

To run it:

substrate --dev

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.

About

Beginner-friendly user interface optimized for the Substrate light client

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • TypeScript 97.8%
  • JavaScript 1.5%
  • Other 0.7%