mangata-node
mangata-node copied to clipboard
Mangata :heart: Substrate
Mangata Node
Omnichain zk-rollup for L1-grade native liquidity. Implementation includes MEV solution, Proof-of-Liquidity, gas-free swaps, algorithmic buy & burn, weight voting & liquidity gauges, time-incentivized liquidity provision, 3rd party incentives, and more.
Description
Mangata operates as a cross-chain liquidity protocol, facilitating seamless transactions between Ethereum and various other blockchains through a omnichain zk-rollup Infrastructure. We leverage the power of ZK-rollup, a second-layer (L2) solution, to ensure universal connectivity with first-layer (L1) blockchains. Additionally, our decentralized exchange platform is designed to provide robust protection against Miner Extractable Value (MEV) and frontrunning attempts, thereby safeguarding the interests of our users.
API
Build mangata-node locally
- Install docker
Compile mangata-node binary and wasms artifacts
- use docker wrapper for cargo to build
mangata-node
./docker-cargo.sh build --release -p mangata-node
build artifacts will be placed in <REPO ROOT>/docker-cargo/release
Run tests and generate code coverage report
Run unit tests only:
cargo test
Run unit tests and generate code coverage report in html format:
cargo install cargo-tarpaulin
cargo tarpaulin --timeout 120 --workspace -e runtime-integration-test mangata-node common-runtime mangata-kusama-runtime mangata-rococo-runtime --exclude-files **/mock.rs **/weights.rs **/weights/* --out Html
Generate docker image
You can use build-image.sh
script to build & generate docker image
./scripts/build-image.sh mangatasolutions/mangata-node:dev
or you can use already compiled build atributes generated in previous step
SKIP_BUILD=1 BUILD_DIR=./docker-cargo/release ./scripts/build-image.sh
This will generate new local docker image mangatasolutions/mangata-node:dev
Run
In order to run mangata-parachain locally one need to set up both:
- local relay network
- local parachain network
Because of number of parameters is quite troublesome thats why we came up with dedicated dockerized environment.
Set up network using parachain-launch
Dockerized setup requires you to build development docker image mangatasolutions/mangata-node:dev.
Start docker environment using, you need to
cd ./launch
yarn install
yarn gen
yarn up
once started, you can access nodes using port forwards
- 127.0.0.1:9944 - relaychain 1st collator
- 127.0.0.1:9945 - relaychain 2nd collator
- 127.0.0.1:9946 - parachain 1st collator
- 127.0.0.1:9947 - parachain 2nd collator
Docker setup can be stopped using
cd ./launch
yarn down
Sudo access
Alice
is set as sudo account for parachain-launch docker setup
Mangata node configuration
There is number of chain configurations available for both development and production environements:
chainspec (--chain ) |
Sudo | Description |
---|---|---|
mangata-kusama |
******* | production kusama public mainnet |
mangata-kusama-local |
Alice | development kusama local testnet |
mangata-rococo |
******* | production rococo public testnet |
mangata-rococo-local |
Alice | development rococo local testnet |