Integrate the EVM in a Cosmos SDK chain with Ignite

In this tutorial, you will learn how to add EVM (Ethereum Virtual Machine) support to your Cosmos SDK blockchain using Ignite CLI.
Ignite CLI offers a variety of Ignite Apps that simplify development. One of them is the Ignite EVM App, which streamlines the integration of Ethereum compatibility into your Cosmos SDK chain.
Step 1: Install Ignite Version 29.6.0
Begin by installing the required version of Ignite CLI:
š https://docs.ignite.com/welcome/install
Once installed, create your Cosmos SDK blockchain with the following command:
ignite scaffold chain gm --address-prefix gm
install command
Navigate into your new blockchain directory:
cd gm
Step 2: Install the Ignite EVM App
Open a new terminal window and install the Ignite EVM App using the following command:
ignite app install github.com/ignite/apps/evm@evm/v0.1.1
ignite evm app install
This will add the EVM module and related configurations to your project.
Step 3: Add EVM Capabilities
Integrate and configure the EVM module by running:
ignite evm add
evm module scaffolding
By default, the EVM module is configured for greater Cosmos compatibility:
- The token decimals are set to
6
. - The precise bank keeper is not enabled.
These settings can be adjusted later if needed. For more advanced configuration, refer to the official guide.
Step 4: Start Your Blockchain
Start your blockchain using the standard command:
ignite chain serve
start blockchain (via ignite)
Alternatively, run it manually with Ethereum JSON-RPC enabled:
gmd start \
--json-rpc.enable \
--json-rpc.address="0.0.0.0:8545" \
--json-rpc.ws-address="0.0.0.0:8546" \
--json-rpc.api="eth,web3,net,txpool,debug,personal"
start blockchain (manually)
Note: Above we are using flags, but as always, you can modify the config.yaml
to achieve the same thing.
Your Cosmos SDK blockchain now supports Ethereum functionality.
The Ignite EVM App significantly simplifies the process of configuring the EVM template manually. However, we recommend gaining a deeper understanding of Cosmos EVM integration by reading the official documentation:
š https://evm.cosmos.network
Questions or support needed? Join our discord.