* [app-js] fixed copyright * [app-js] css fixes * [app-js] Add api to window object * Make CSS columns resizable (FF & Chrome) * Window Interface export * formatting * Make columns responsive, added Dropdown * Added code snippets * Strip down output to functional component * removed component state, removed onEdit, update on select * Editor styling * Added snippets and local storage * output formatting * Example dummies * Cleanup & examples * Added util & keyring @polkadot modules to window object * Moved intro to component to make it translatable * Added more RPC examples * small fix * WIP exaples * Styles for resizer, fixed flex overflow misbehaviour * remove code from snippets for options, * Added labels to dropdown * Examples * More examples and removed deprecated examples * Added labels to dropdown -> missing type decl. * correst link to ui-keyring package * Make tslint happy * Pull api clone/disconnect into sd-668 (#686) * JS playground & console (start something...) * It runs... * WIP * Use codeflask * Highlights * Small updates, console v0.1 is ok to play with * Bump * Only shadow, no border (article) * Allow API to be disposed of between runs * Clone and disconnect API * Move id generation (no need for constructor) * Small updates * Small type adjustments * smaller fixes after code review * updated yarn.lock * move options calculation out of return * Remove exposure of api to window object * Expand JS console logging (#691) * Expand JS console logging * Log extrinsics directly * switch to getDerivedStateFromProps() * roll back ts versions * react-i18next rollback to 9.0.2 * Lock react-i18next to 9.0.2 |
||
|---|---|---|
| packages | ||
| test | ||
| .babelrc.js | ||
| .codeclimate.yml | ||
| .dockerignore | ||
| .editorconfig | ||
| .gitignore | ||
| .gitlab-ci.yml | ||
| .npmignore | ||
| .nvmrc | ||
| .travis.yml | ||
| babel.config.js | ||
| CHANGELOG.md | ||
| deployment.template.yml | ||
| Dockerfile | ||
| jest.config.js | ||
| lerna.json | ||
| LICENSE | ||
| package.json | ||
| postcss.config.js | ||
| README.md | ||
| tsconfig.json | ||
| tslint.json | ||
| types.json | ||
| yarn.lock | ||
@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-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-nodeinfo Node information and status
- app-storage A simple node storage query application. Multiple queries can be queued and updates as new values become available.
- app-toolbox Sumission of raw data to RPC endpoints and utility hashing functions.
- app-transfer A basic account management app, allowing transfer of DOTs between accounts.
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 -
- Clone the repo locally, via
git clone https://github.com/polkadot-js/apps <optional local path> - Ensure that you have a recent LTS version of Node.js, for development purposes Node >=10.13.0 is recommended.
- Ensure that you have a recent version of Yarn, for development purposes Yarn >=1.10.1 is required.
- Install the dependencies by running
yarn - Ready! Now you can launch the UI (assuming you have a local Polkadot Node running), via
yarn run start - 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|fullswitches from a full (the default) to a light mode interface that only has specific applications highlighted. - Running with
UI_THEME=substrate|polkadotswitches from a Polkadot theme (the default) to a Substrate-branded UI
I want to code around
There is a base template availble app-123code that acts as a simple starting point for adding additional apps to the UI. Alternatively if you just want some place where you can write some code, it does the trick.
While it is hidden from the sidebar, it is accessible via http://127.0.0.1:3000/#/123code
Be sure to follow the app-123code/README.md instructions.
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 .