Skip to content
 
 

Latest commit

 

History

8,543 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


Blazing fast, portable and modular toolkit for Ethereum application development, written in Rust.

  • Forge — Build, test, fuzz, debug and deploy Solidity contracts.
  • Cast — Swiss Army knife for interacting with EVM smart contracts, sending transactions and getting chain data.
  • Anvil — Fast local Ethereum development node.
  • Chisel — Fast, utilitarian and verbose Solidity REPL.

Demo

Installation

curl -L https://foundry.paradigm.xyz | bash
foundryup

See the installation guide for more details.

To verify a downloaded release archive or container image, see Verifying Releases.

Getting Started

Initialize a new project, build and test:

forge init counter && cd counter
forge build
forge test

Interact with a live network:

cast block-number --rpc-url https://eth.merkle.io
cast balance vitalik.eth --ether --rpc-url https://eth.merkle.io

Fork mainnet locally:

anvil --fork-url https://eth.merkle.io

Read the Foundry Docs to learn more.

Solidity editor integration

With VS Code installed, run forge lsp from your Solidity project's terminal. Forge opens that project in a VS Code Extension Development Host with its bundled Solidity extension. No Foundry checkout, extension build, or separate Solar installation is needed. See the editor guide for setup and client development.

For other editors, configure the Solidity language server command as forge lsp --stdio. Bare forge lsp also retains server mode when standard input is redirected; forge lsp --vscode explicitly opens VS Code. Solar uses foundry.toml, workspace folders, remappings, and evm_version from the project automatically.

Solar's default flycheck runs forge lint --json with the same Forge executable that started the server. Solar's existing initializationOptions.forgePath option overrides that executable.

forge lsp follows Forge's normal environment setup, global-option parsing, and command dispatch. In server mode, project dotenv warnings use stderr, leaving stdout reserved for the LSP transport.

Contributing

Contributions are welcome and highly appreciated. To get started, check out the contributing guidelines.

Join our Telegram to chat about the development of Foundry.

Support

Having trouble? Check the Foundry Docs, join the support Telegram, or open an issue.

License

Licensed under either of Apache License, Version 2.0 or MIT license at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in these crates by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

About

Foundry is a blazing fast, portable and modular toolkit for Ethereum application development written in Rust.

Resources

Contributing

Security policy

Stars

5 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages