Skip to main content
Version: Devnet - Playground

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.

note

This guide demonstrates how to run an EVM RollApp. However, WASM RollApps are also supported and can be ran using similar steps.

Important

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:

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.

  1. Export your 0x address:

    export ZEROX_ADDRESS=<your-0x-address> 
  2. Convert 0x to bech32:

    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}')
  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/
  4. 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.