foundry: A portable and modular toolkit for Ethereum application development, written in Rust.
What problem it solves
Ethereum application development requires tooling to build, test and deploy Solidity contracts, interact with EVM chains, and run a local development node. Foundry groups these capabilities into a set of separate tools so a developer can cover the whole workflow without stitching together unrelated utilities.
Key features
Forge for contract development — Forge is the tool for building, testing, fuzzing, debugging and deploying Solidity contracts, including a project initializer and a language server mode.
Source: crates/forge, README
Cast for chain interaction — Cast interacts with EVM smart contracts, sends transactions and fetches chain data, including balance and block-number queries against a live RPC endpoint.
Source: crates/cast, README
Anvil local development node — Anvil is a local Ethereum development node that can fork a remote chain, so contracts can be exercised against mainnet state locally.
Source: README, crates/anvil, crates/anvil/core
Chisel Solidity REPL — Chisel provides a Solidity REPL for quick interaction with the language, shipped as its own crate within the workspace.
Source: README, crates/chisel
Solidity editor integration — The `forge lsp` command opens a Solidity project in a VS Code Extension Development Host with the bundled Solidity extension, or serves other editors over stdio.
Source: README, crates/solar, editors
Quick start
Copied verbatim from the project's README.
curl -L https://foundry.paradigm.xyz | bash
foundryupforge init counter && cd counter
forge build
forge testanvil --fork-url https://eth.merkle.ioWho it may suit
Inference: may suit Solidity developers who want a single toolkit for contract testing, chain interaction and local node work, and contributors looking to work on a multi-crate Rust workspace.
Topics to discuss
How should the division of responsibilities between Forge, Cast, Anvil and Chisel evolve as new Ethereum tooling needs appear?
What workflows would you most like the language server and linting integration to cover beyond the current forge lsp setup?
Which areas of the workspace would you prioritise for new contributors, and what documentation gaps should be closed first?
Written by ReadmeX AI from the project's README, source and public GitHub data; it may contain mistakes.
Read the original README https://github.com/foundry-rs/foundry#readme
ReadmeX opened this community for a trending project; it is not run by the project. Maintainers can claim it from the community page.
Comments
…