shardeum
Table of Contents​
- Introduction
- Features
- Getting Started
- Running the Network Locally
- Testing with MetaMask
- Stopping and Cleaning Up
- Health Checks
- Contributing
- Community
- License
Introduction​
Shardeum is an innovative EVM-compliant blockchain platform that leverages dynamic state sharding to achieve unprecedented scalability. By implementing a sharding model, Shardeum ensures faster processing times and lower transaction costs without compromising security or decentralization.
Features​
- Scalability: Horizontal scalability through sharding
- High Performance: Low latency and high throughput
- Security: Advanced cryptographic techniques and robust consensus protocols
- Decentralization: Truly decentralized network with no single point of failure
- Interoperability: EVM compatibility for existing DApps and smart contracts
Getting Started​
Prerequisites​
- Node.js (v18.16.1)
- npm (v9.5.1)
- Rust (v1.74.1)
- Docker (optional, for containerized deployment)
Setting Up Your Environment​
Shardeum requires specific versions of Nodejs, Rust and other build tools to run.
We have detailed setup instructions in this page
[!IMPORTANT] This is a crucial step, ensure your local environment is correctly set up before proceeding with the next steps
Installation​
- Clone the repository:
git clone https://github.com/shardeum/shardeum.git
cd shardeum
- Install dependencies:
npm ci
- Network Configuration:
git apply debug-10-nodes.patch
Learn more about the different config options here
- Compile project
npm run prepare
- Install the Shardus CLI:
npm install -g shardus
npm update @shardus/archiver
Running the Network Locally​
To start a local Shardeum network with 10 nodes, run:
shardus start 10
Running the JSON-RPC Server​
- Clone the JSON-RPC server repository:
git clone https://github.com/shardeum/json-rpc-server.git
cd json-rpc-server
npm install
- Start the server:
npm run start
The default RPC URL is http://localhost:8080
.
Testing with MetaMask​
To test your local Shardeum network using MetaMask:
- Install the MetaMask extension.
- Add the Shardeum network to MetaMask:
- Network Name: Shardeum
- RPC URL: http://localhost:8080
- Chain ID: 8082
- Currency Symbol: SHM
- Block Explorer URL: http://localhost:6001/
Stopping and Cleaning Up​
To stop the network and clean up resources:
shardus stop && shardus clean && rm -rf instances
Health Checks​
Diagnostic endpoints to check the health of the node
- GET
/is-alive
this endpoint returns 200 if the server is running. - GET
/is-healthy
currently the same as/is-alive
but will be expanded.
Contributing​
We welcome contributions! Please see our Contribution Guidelines for more information. All contributors are expected to adhere to our Code of Conduct.
Community​
License​
This project is licensed under the MIT License. See the LICENSE file for details.