Watr Protocol is Watr’s decentralized and public blockchain platform that is open to everyone who wants to build, create and collaborate on it. Watr gives developers, entrepreneurs and investors direct access to commodities as a platform. It is a Polkadot Parachain, leveraging the shared security of the Polkadot ecosystem as well as high transaction throughput, connectivity with the other parachains and regular upgrades.
- Before starting, please follow the Substrate quick start guide to setup the environment. https://docs.substrate.io/quick-start/
- Also, install zombienet: https://github.com/paritytech/zombienet
-
Clone and build the Watr node
git clone https://github.com/Watr-Protocol/watr.git cd watr # Build. Be patient, it can take a long time :) cargo build --release
-
Build Polkadot
git clone https://github.com/paritytech/polkadot.git cd polkadot # Build with fast-runtime enabled cargo build --release --features fast-runtime
-
Copy the
polkadot
binary stored attarget/release/polkadot
into thewatr/bin
directory# In polkadot root. Assuming watr is one directory up. cp target/release/polkadot ../watr/bin
-
Start the local testnet
To start Mainnet:
zombienet -p native spawn zombienet-config/mainnet.toml
To start Devnet:
zombienet -p native spawn zombienet-config/devnet.toml
cargo test
- Benchmarks
- Release Guide
- Integrations Tests
- Governance
- Connect Metamask
- Sending funds Substrate<>Evm
- Collator Selection Reward Pot
- Cross Chain Assets Transfer
- Deployment
Substrate
pallet-scheduler
allows extrinsic calls to be scheduled for a later timepallet-balances
maintains the native Watr currencypallet-sudo
provides a single Root-privileged account. Will be removedpallet-multisig
allows for several accounts to manage a single multisig accountpallet-identity
is a simple, federated, identity system that allows users to add a nickname, social medias, and morepallet-collective
creates the Councilpallet-motion
provides root-level origin for the Councilpallet-membership
makes managing Council members easierpallet-treasury
provides a pot for holding Council governed fundspallet-assets
creates and manages new tokenspallet-utility
provides dispatch management (such as batched calls)
EVM / Frontier
pallet-ethereum
provides Ethereum compatibilty and RPCspallet-evm
Adds an Ethereum Virtual Machine. Provides support for EVM contractspallet-base-fee
follows EIP-1559's fee mechanismpallet-evm-precompile-assets-erc20
(aka XC-20s) allows EVM smart contracts to accesspallet-assets
using an ERC-20 interface
XCM
cumulus-pallet-xcmp-queue
pallet-xcm
cumulus-pallet-xcm
cumulus-pallet-dmp-queue
- XCM is configured to allow certain asset transfers to and from Statemint (e.g., USDt)
A current Devnet is running on the Rococo relay chain.
Endpoint: https://polkadot.js.org/apps/?rpc=wss%3A%2F%2Frpc.dev.watr.org%3A443#/explorer
This project was originally forked from the Substrate Parachain Template.
The stand-alone version of this template is hosted on the Substrate Devhub Parachain Template for each release of Polkadot. It is generated directly to the upstream Parachain Template in Cumulus at each release branch using the Substrate Template Generator.
👉 Learn more about parachains here, and parathreads here.
🧙 Learn about how to use this template and run your own parachain testnet for it in the Devhub Cumulus Tutorial.