# Resources

In this section, we will provide a comprehensive overview of the main tools and technologies used in the ENI blockchain ecosystem. Whether you are new to web3 development or an experienced developer looking to expand your skills, these resources will help you get started and deepen your understanding. Developers on ENI have the unique advantage of choosing between smart contract development on CosmWasm and EVM, and they can seamlessly interact between the two environments.

#### Cosmos SDK

The Cosmos SDK is a modular framework for building custom blockchains in the Cosmos ecosystem. It provides a set of tools and libraries that simplify the creation and management of interoperable blockchains.

* **Tendermint**: Tendermint is the consensus engine that powers the Cosmos SDK. It ensures fast and secure consensus through a Byzantine Fault Tolerance (BFT) protocol.
* [Tendermint Documentation](https://docs.tendermint.com/)
* **Modular Architecture**: The Cosmos SDK adopts a modular architecture that allows developers to create and integrate various modules to build feature-rich blockchains.
* [Modular Architecture Documentation](https://docs.cosmos.network/v0.46/building-modules/intro.html)
* **Transaction Structure**: Understanding the transaction structure is crucial for developing applications on the Cosmos SDK. Transactions are the primary way to interact with the blockchain.
* [Transaction Structure Documentation](https://docs.cosmos.network/main/learn/advanced/transactions)
* **IBC (Inter-Blockchain Communication)**: IBC is a protocol that enables communication and asset transfer between different blockchains in the Cosmos ecosystem.
* [IBC Overview](https://docs.cosmos.network/v0.45/ibc/overview.html)

#### EVM (Ethereum Virtual Machine)

The EVM is the runtime environment for smart contracts on Ethereum and EVM-compatible blockchains like ENI. It allows developers to write and deploy smart contracts using Solidity.

* **Solidity**: Solidity is the most widely used programming language for writing smart contracts on the EVM. It is a statically typed language influenced by JavaScript, Python, and C++.
* [Solidity Documentation](https://docs.soliditylang.org/en/v0.8.25/)
* **Hardhat**: Hardhat is a development environment for compiling, deploying, testing, and debugging Ethereum software. It is highly extensible and integrates well with other tools.
* [Hardhat Documentation](https://hardhat.org/hardhat-runner/docs/getting-started)
* **Foundry**: Foundry is a toolkit for Ethereum application development that provides a comprehensive set of tools for testing and deploying smart contracts.
* [Foundry Documentation](https://github.com/foundry-rs/foundry)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.eniac.network/build/ecosystem/resources.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
