Development frameworks

The following tools will help you develop and test your applications:

Hardhatโ€‹

Hardhat is a comprehensive development environment designed specifically for Ethereum, Arbitrum, and EVM developers. It aims to streamline the process of creating, compiling, deploying, testing, and debugging smart contracts. Its robust and customizable framework simplifies the management of complex projects and enables integration with other ecosystem tools.

Notable features include:

  • A built-in console

  • Advanced debugging capabilities

  • Support for extending functionality through plugins

Foundryโ€‹

Foundry serves as a high-performance, portable and modular toolkit for EVM application development, using the Rust programming language. It streamlines the creation, testing, and deployment of smart contracts on Ethereum, Arbitrum and any EVM network.

Notable features include:

  • Seamless interaction with EVM smart contracts, transactions and chain data

  • A local node

  • A user-friendly Solidity REPL environment for efficient development

Truffleโ€‹

Truffle provides a comprehensive suite of tools for building, testing, debugging, and deploying on Ethereum, Arbitrum, and other EVM-compatible chains.

Notable features include:

  • Advanced debugging capabilities

  • Fast EVM simulation with Ganache

  • A user-centered design featuring a VS Code extension

  • Robust support for L1 and L2 solutions

  • Collaboration with ConsenSys Diligence to boost security for projects

Brownieโ€‹

Brownie is a Python-based framework designed specifically for developing and testing smart contracts on the Ethereum Virtual Machine. It offers full support for Solidity and Vyper programming languages and utilizes pytest for contract testing.

Notable features include:

  • Trace-based coverage evaluation

  • Property-based and stateful testing with Hypothesis

  • Powerful debugging tools, e.g. Python-style tracebacks and custom error strings

Last updated