Skip to content

Basic Polkadot/Substrate UI for interacting with a node. This is the main user-facing application, allowing access to all features available on Substrate chains.

License

Notifications You must be signed in to change notification settings

marsrobertson/apps

 
 

Repository files navigation

polkadotjs license style npm travis greenkeeper dependency devDependency

@polkadot/apps

A Portal into the Polkadot and Substrate networks. Provides a view and interaction layer from a browser.

This can be accessed as a hosted application via https://polkadot.js.org/apps/ to explorer any of the supported Polkadot and Substrate chains

overview

The repo is split into a number of packages, each representing an application. These are -

  • apps This is the main entry point. It handles the selection sidebar and routing to the specific application being displayed.
  • app-accounts A basic account management app.
  • app-addresses A basic address management app.
  • app-democracy A basic voting app, allowing votes on activate proposals and referendums.
  • app-explorer A simple block explorer. It only shows the most recent blocks, updating as they become available.
  • app-extrinsics Submission of extrinsics to a node.
  • app-rpc Sumission of raw data to RPC endpoints.
  • app-settings A basic settings management app, allowing choice of language, node to connect to, and theme
  • app-staking A basic staking management app, allowing staking and nominations.
  • app-storage A simple node storage query application. Multiple queries can be queued and updates as new values become available.
  • app-toolbox Utilities to manage data.
  • app-transfer A basic account management app, allowing transfer of DOTs between accounts.
  • app-vanitygen A toy that allows you to generate vanity addresses. Running yarn run vanitygen --match <string> runs the generator as a Node CLI app. (Orders of a magnitude faster due to the use of libsoldium bindings)

In addition the following libraries are also included in the repo. These are to be moved to the @polkadot/ui repository once it reaches a base level of stability and usability. (At this point with the framework being tested on the apps above, it makes development easier having it close)

  • ui-app A reactive (using RxJS) application framework with a number of useful shared components.
  • ui-signer Signer implementation for apps.
  • ui-react-rx Base components that use the RxJS Observable APIs

development

Contributions are welcome!

To start off, this repo (along with others in the @polkadot family) uses yarn workspaces to organise the code. As such, after cloning dependencies should be installed via yarn, not via npm, the latter will result in broken dependencies.

To get started -

  1. Clone the repo locally, via git clone https://github.com/polkadot-js/apps <optional local path>
  2. Ensure that you have a recent LTS version of Node.js, for development purposes Node >=10.13.0 is recommended.
  3. Ensure that you have a recent version of Yarn, for development purposes Yarn >=1.10.1 is required.
  4. Install the dependencies by running yarn
  5. Ready! Now you can launch the UI (assuming you have a local Polkadot Node running), via yarn run start
  6. Access the UI via http://localhost:3000

There are additional environment UI flags that change both the theme and mode -

  • Running with UI_MODE=light|full switches from a full (the default) to a light mode interface that only has specific applications highlighted.
  • Running with UI_THEME=substrate|polkadot switches from a Polkadot theme (the default) to a Substrate-branded UI

Docker

You can run a docker container via -

docker run --rm -it --name polkadot-ui -p 80:80 chevdor/polkadot-ui:latest

To build a docker container containing local changes -

docker build -t chevdor/polkadot-ui:latest .

About

Basic Polkadot/Substrate UI for interacting with a node. This is the main user-facing application, allowing access to all features available on Substrate chains.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 89.1%
  • CSS 6.9%
  • JavaScript 3.6%
  • Other 0.4%