Quick Start
This guide provides a quickstart for running your first RollApp using Roller - a powerful CLI tool designed for efficient RollApp deployment and management.
This setup is ideal for development and testing purposes.
Currently only Debian and macOS are supported.
Roller Installation
curl https://raw.githubusercontent.com/dymensionxyz/roller/main/install.sh | bash
Run a RollApp
Run the following command to initialize your RollApp. When prompted, select EVM
as the RollApp type:
roller rollapp init test_1234-1 --mock
Start your RollApp:
roller rollapp start
If successful, you should see output similar to the following:
The Rollapp sequencer is running on your local machine!
💈 Endpoints:
EVM RPC: http://127.0.0.1:8545
Node RPC: http://127.0.0.1:26657
Rest API: http://127.0.0.1:1317
💈 Log file path: /home/ubuntu/.roller/rollapp/rollapp.log
At this point, your RollApp is running and you should be able to interact with it as if you would with any other EVM chain.
Try it out !
Simple Token Transfer
In Rollapp EVM, addresses have two representations:
bech32
: Used by the Rollapp Development Kit0x
: Used by the EVM
The following example demonstrates how to transfer tokens from a genesis account to some EVM 0x
address. This address can be your own, or any other random address.
For simplicity, we'll use the rollappd
CLI to interact with the RollApp. This requires converting your 0x
address to its bech32
representation, but you can also use the EVM JSON-RPC or any other EVM client or wallet.
Export your
0x
address:export ZEROX_ADDRESS=<your-0x-address>
Convert
0x
tobech32
:export NOPREFIX_ZEROX_ADDRESS=$(echo $ZEROX_ADDRESS | cut -c 3-)
export BECH32_ADDRESS=$(rollappd debug addr $NOPREFIX_ZEROX_ADDRESS | grep "Bech32 Acc:" | awk '{print $3}')Send tokens to your converted
0x
address:rollappd tx bank send rollapp_genesis_account ${BECH32_ADDRESS} 1000000000000amock --fees=2000000000000amock --keyring-backend test --home ~/.roller/rollapp/
Query your
0x
address balance using EVM JSON-RPC:curl -X POST -H "Content-Type: application/json" -d "{\"jsonrpc\":\"2.0\",\"method\":\"eth_getBalance\",\"params\":[\"$ZEROX_ADDRESS\", \"latest\"],\"id\":1}" http://localhost:8545
If successful, you should see the balance of your 0x
address increase by 1000000000000amock.
For a more comprehensive guide on interacting with the EVM, we recommend starting with this resource.
Next Steps
In the following sections, we will guide you through deploying a more production-like setup on the Dymension Playground.