Mangata node
Mangata :heart: Substrate
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. The project is written primarily in Rust, distributed under the The Unlicense license, first published in 2020. Key topics include: decentralized-exchange, eigenlayer, ethereum, mangata, mev.

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:
bashcargo test
Run unit tests and generate code coverage report in html format:
bashcargo 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
bashcd ./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
bashcd ./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 |
Contributors
Showing top 12 contributors by commit count.
