We’ve created a simple open source UI which enables users to manage their supersig(s) easily, along with an Address book, and Accounts to show your balances connected to your Polkadot Extension.
Setup Supersig UI on local machine
git clone https://github.com/decentration/supersig-ui.git
Now it should be available on port 3000, or if that is busy, a different port will be selected.
Et Voila! you can interact with supersig on the provided chain in the chain selector:
If you want you can add a substrate-node-template containing the supersig pallet and rpc module to your local machine:
Setup Supersig Node Template
git clone https://github.com/decentration/substrate-supersig-template
git checkout v0.9.37-fix-unbounded
cargo build --release
To interact with your local node, you can select Development in the Chain Selector, if you are using ws://127.0.0.1:9944, else you can create a Custom port.
Test Supersig Workflow
Test the workflow of your chain containing Supersig features.
To swiftly test and debug your chain containing Supersig go to Settings and click Test Supersig.
This will run through a workflow of tests, checking:
- if the chain is working,
- then if the supersig pallet is in the chain,
- then if the Rpc methods are correctly showing,
- then it will create a supersig org with Alice as a member,
- then it will send a balance to that supersig,
- then it will create a proposal to send some balance to Dave,
- then the member (Alice) will approve the proposal.
- Then Alice will propose to delete the supersig,
- then Alice will approve that, and then the workflow is complete.
If the test completes you can be sure your chain, the supersig, and its interaction with the UI will be working sufficiently. If it does not complete you can check the errors and debug your setup until it works.
Permanently add your own chain to the Chain Selector (optional)
- Add your chain definitions in `./packages/apps/config/chains/specs/index.ts` add your chain definitions, and then add your chain definitions .ts file.
- Also add the chain definitions in: `./packages/apps-config/src/api/spec/index`, and add the chain definitions file as well.
- Add the types to the `./packages/apps-config/src/api/spec/typesBundle.ts` either by runnign
yarn build:typesBundleor if you face issues, you can manually insert the types into the typesBundle.ts file.
Note: make sure that the name you use in the spec matches the name of the chain, else it will not work, and you will not have an error.
Voila! you should be up and running…
Watch video runthrough (for reviewer):