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.19.1)
npm (v10.2.4)
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.
Obtaining Test Tokens and Configuring the Genesis File: To receive SHM tokens for testing on your local Shardeum network, you need to add your wallet address to the src/config/genesis.json file. Open this file in a text editor and add an entry for your wallet address with the desired SHM balance like this:
src/index.ts is mocked for all tests. You can see how its mocked out in the test/unit/setup.ts file. Don’t import the index file directly if you can since it has a lot of dependencies, import the specific files you need in your implementation or test files.
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.
An EVM-based autoscaling blockchain platform
Table of Contents
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
Getting Started
Prerequisites
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
Installation
For instance, if your local shardeum repo is on this path
/Users/john/Desktop/projects/shardeum/then you would run:Learn more about the different config options here
Running the Network Locally
To start a local Shardeum network with 10 nodes, run:
Running the JSON-RPC Server
The default RPC URL is
http://localhost:8080.Testing with MetaMask
To test your local Shardeum network using MetaMask:
Testing with Jest
src/index.tsis mocked for all tests. You can see how its mocked out in thetest/unit/setup.tsfile. Don’t import theindexfile directly if you can since it has a lot of dependencies, import the specific files you need in your implementation or test files.Stopping and Cleaning Up
To stop the network and clean up resources:
Health Checks
Diagnostic endpoints to check the health of the node
/is-alivethis endpoint returns 200 if the server is running./is-healthycurrently the same as/is-alivebut 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.