Substrate is part of Polkadot SDK! 
Discover →

Rococo Network

Rococo, the place for parachain testing!

Rococo is a testnet built for parachains. Rococo utilizes Cumulus and XCMP (Cross-Chain Message Passing) to send transfers and messages between parachains and the Relay Chain. Every message is sent to the Relay Chain, then from the Relay Chain to the desired parachain.

Rococo currently runs Rocmint (Statemint on Rococo) and Canvas as well as several community parachains. Rococo also has a working Substrate<>Substrate bridge to Wococo Network, and a first iteration of Beefy implementation.

Parachain lifecycle

  • 1

    Become parathread

  • 2

    Onboarding

  • 3

    Upgrading

  • 4

    Parachain

  • 5

    Downgrading

  • 6

    Parathread

Obtaining ROC

ROC are available in the Rococo Faucet channel on Matrix. To receive ROC tokens, use the command:

!drip YOUR_ROCOCO_ADDRESS

If you have a parachain already on Kusama and/or Polkadot, you will be entitled for a long term lease. If this is the case, you need to directly Open a Request with the following information: paraID of your Kusama parachain, WASM and Genesis of your parachain following the same paraID that you have on Kusama.

Off-chain steps

Reserve para ID

# Extrinsic to be called on chain
Registrar.reserve()

Build parachain using para ID

# You will need to generate a chainspec with the correct paraID from the previous step
# Assumes that `rococo-local` is in `node/chan_spec.rs` as the relay you registered with
./target/release/parachain-collator build-spec --disable-default-bootnode > rococo-local-parachain-plain.json

Run and sync collator

#Rococo’s chainspec can be found here: https://paritytech.github.io/chainspecs/
./target/release/parachain-collator \
--[your authority] \
--collator \
--force-authoring \
--[your chainspec] \
--base-path /tmp/parachain/alice \
--port 40333 \
--ws-port 8844 \
-- \
--execution wasm \
--chain <relay chain raw chain spec> \
--port 30343 \
--ws-port 9977

Register Wasm and chain spec

#Obtain Wasm runtime validation function
./target/release/parachain-collator export-genesis-wasm --chain [your_chainspec] > [your_wasm_file_name]

#Generate a parachain genesis state
./target/release/parachain-collator export-genesis-state --chain [your_chainspect]> [your_genesis_file_name]

# Extrinsic to be called on chain
Registrar.register(paraID, genesisHead, validationCode)

Now that you have generated and registered your parachain on Rococo, you can Open a Request for it to be upgraded!

Learn more

Explore additional ecosystem resources.

Support

Access technical support from across the community.

Parachain Technical matrix chat channel — Reach out!