Diamond UI is a decentralized application designed to streamline operations, offering a comprehensive toolkit that promotes trust and stability in the DMD ecosystem.
-
Validator Operations:
- Access to validators list, detailed statistics, and delegate management.
- Ability to stake, unstake, and order coins with integrated Epoch rewards.
-
User Profiles:
- Personalized profiles for all network participants.
- Displays staking details, voting power, scores, and delegates.
-
DAO Integration:
- A dedicated module for decentralized governance.
- Supports proposal submissions and voting phases.
-
Access Levels:
- General Users: View network stats and validators without connecting a wallet.
- Validator Candidates: Manage nodes, stakes, and voting power.
- DMD Token Holders: Stake coins on validator nodes without running a node.
This guide provides step-by-step instructions to set up and run the project.
- Node.js: Make sure you have Node.js installed. Download here.
- npm or yarn: Ensure
npm
oryarn
is installed for managing packages.
-
Clone the repository:
git clone https://github.com/DMDcoin/diamond-ui cd diamond-ui
-
Install dependencies:
npm install
- Start the Development Server
Starts the project usingvite
for development.npm run start
-
Build the Project
Compiles TypeScript and builds the production-ready version of the application usingvite
.npm run build
-
Preview the Build
Previews the production build in a local environment.npm run serve
-
Update DAO Contract ABIs
Copies the contract ABIs from the DAO contracts repository into the application.npm run update-dao-abis
-
Update Core Contract ABIs
Copies the contract ABIs from the Core contracts repository into the application.npm run update-core-abis
-
Generate TypeScript Contract Types
Usestypechain
to generate TypeScript types for contract ABIs.npm run typechain