> ## Documentation Index
> Fetch the complete documentation index at: https://docs.initia.xyz/llms.txt
> Use this file to discover all available pages before exploring further.

# MiniEVM Introduction

## Overview

MiniEVM is a variant of Initia's rollup framework with Ethereum Virtual Machine
([EVM](https://ethereum.org/en/developers/docs/evm/)) integration. With MiniEVM,
developers can deploy and interact with Solidity and other EVM-based smart
contracts just as they would on other EVM networks. All the tools such as
wallets, explorers, and developer tools that you are familiar with also work out
of the box with MiniEVM.

In addition to EVM compatibility, MiniEVM provides a number of unique features,
including:

* **Cosmos Integration**
* **Single Token Standard**
* **IBC Compatibility**

## Cosmos Integration

MiniEVM interacts with the Cosmos blockchain through a set of custom
precompiles. This integration allows the EVM to:

* **Read the underlying Cosmos chain state**: Access and read the state of the
  Cosmos blockchain directly from the EVM.
* **Send Cosmos transactions**: Initiate and send transactions on the Cosmos
  blockchain.

### Notable Features

* **Query native Connect price data**: Retrieve price data from the native
  Connect oracle.
* **Query all tokens held by an account**: Obtain a comprehensive list of tokens
  held by a specific account.

## Single Token Standard

MiniEVM revolves around a single token standard by implementing a custom Bank
Interface that provides an ERC20 interface for all tokens on the chain. This
includes:

* **Native tokens**: Tokens that are native to the Cosmos blockchain.
* **Fee-denom tokens**: Tokens used for transaction fees.
* **Tokens bridged via IBC**: Tokens transferred through the Inter-Blockchain
  Communication (IBC) protocol.
* **ERC20 tokens created on the rollup**: Standard ERC20 tokens created within
  the rollup framework.

### Benefits

* **Unified balance querying**: Ability to query all tokens held by an account
  in a single query.
* **Simplified token handling**: No need to handle different token standards in
  smart contracts, making development more straightforward.

***

For more detailed information, please refer to the specific sections of this
documentation.
