# Chain Setup

## Chain

ENI utilizes multiple chains for various stages of the development lifecycle. This multi-chain approach allows developers to build, deploy, manage, and iterate confidently, ensuring thorough testing and feedback before updates go live on the mainnet.

> All **chain updates** are initially **deployed to the development network** to ensure **stability**. After successful testing on the development network, they are **migrated to the testnet** for **further testing and validation**. Finally, the updates are **released on the mainnet**.
>
> This process enables developers to **thoroughly test** their applications and **raise any concerns** about the upgrades **before they go live**.

## Mainnet

The **Chain 173**  chain is the mainnet of the ENI blockchain. It is the live, production environment where actual transactions and smart contract deployments occur. This chain is used for all real-world applications and activities.

* **Purpose**: Production
* **Chain ID**: `173`
* **EVM Chain ID**: `173AA`

<br>

## Testnet <a href="#testnet" id="testnet"></a>

**Chain 174** is the **testnet** for the ENI **blockchain**. It is used for **testing and development purposes**. Developers can **deploy and test** their **dApps and smart contracts** in a **controlled environment** that **simulates mainnet conditions**.

This network is **crucial for ensuring** that applications **function as expected** before they go live on the mainnet.

* **Purpose**: Staging&#x20;
* **Chain ID**: `174`
* **EVM Chain ID**: `174AA`

## Devnet <a href="#devnet" id="devnet"></a>

**Chain 174**  is the **development network** for the ENI **blockchain**. It serves as an **early-stage testing and experimentation** environment. This network is typically used by developers to **test new features**, conduct **integration tests**, and **develop prototypes** in an **isolated environment**.

* **Purpose**: Testing&#x20;
* **Chain ID**: `175`
* **EVM Chain ID**: `175AA`

## Local Chains

Developers can also run local chains on their machines for testing and development purposes. Local chains are isolated environments that mimic the behavior of the mainnet, testnet, or devnet chains. They are useful for testing new features, debugging issues, and experimenting with smart contracts with full control over all tokens and governance decisions.

* **Purpose**: Development
* **Chain ID**: Set by user (default: eni-1)

### Chain Registry <a href="#chain-registry" id="chain-registry"></a>

The [ENI Chain Registry](https://github.com/eni-chain/chain-registry)  contains additional information about each chain.
