Skip to main content
Version: Mainnet - Dymension

Quick start

The information below shows developers how to use a general public testnet RollApp for smart contract deployment or how to deploy their own local instance of a RollApp.

info

For a more in-depth guide on running a RollApp in production (for both testnet and mainnet) follow this tutorial.

Below is a guide for deploying a local instance of an EVM RollApp (e.g., no IBC bridge and mock base layer). To begin install the following requirement: Go 1.23

Set RollApp info

EVM RollApps set the bech32 prefix (e.g., dym ) and have a corresponding 0x hex address they can use. Use the standard token denom setup with a prefix of a for EVM RollApps.

export BASE_DENOM="TOKEN_SYMBOL" # e.g. aevm
export ROLLAPP_CHAIN_ID="YOUR_CHAIN_ID" # example: ethm_1234-1

export BECH32_PREFIX="$BASE_DENOM"

Install RollApp

git clone --branch v2.2.1-rc04 https://github.com/dymensionxyz/rollapp-evm.git && cd rollapp-evm
make install BECH32_PREFIX=${BECH32_PREFIX}

Set default values

export EXECUTABLE="rollapp-evm"
export DENOM=$(echo "$BASE_DENOM" | sed 's/^.//')
export MONIKER="$ROLLAPP_CHAIN_ID-sequencer"

export ROLLAPP_HOME_DIR="$HOME/.rollapp_evm"
export ROLLAPP_SETTLEMENT_INIT_DIR_PATH="${ROLLAPP_HOME_DIR}/init"
export SKIP_EVM_BASE_FEE=true # optional, removes fees on the rollapp

export SETTLEMENT_LAYER="mock" # when running a local hub or a public network use "dymension"

export CELESTIA_NETWORK="mock" # for a testnet RollApp use "mocha", for mainnet - "celestia"
export CELESTIA_HOME_DIR="${HOME}/.da"

Initialize

sh scripts/init.sh

Run the RollApp

rollapp-evm start
How to transfer tokens?

Get bech32 RollApp genesis address (this address received tokens on genesis):

rollapp-evm keys show <username> --keyring-backend test

Get bech32 representation of destination 0x address. To convert 0x to bech32 remove the 0x prefix in the hex address:

rollapp-evm debug addr <HEX_ADDRESS>

Input the bech32 address for both the from and to accounts

rollapp-evm tx bank send <FROM_ADDRESS> <TO_ADDRESS> <AMOUNT><BASE_DENOM> --fees=2000000000000arax