
[![Github Actions][gha-badge]][gha-url] [![Telegram Chat][tg-badge]][tg-url] [![Telegram Support][tg-support-badge]][tg-support-url]
[gha-badge]: https://img.shields.io/github/actions/workflow/status/foundry-rs/foundry/test.yml?branch=master&style=flat-square
[gha-url]: https://github.com/foundry-rs/foundry/actions
[tg-badge]: https://img.shields.io/endpoint?color=neon&logo=telegram&label=chat&style=flat-square&url=https%3A%2F%2Ftg.sumanjay.workers.dev%2Ffoundry_rs
[tg-url]: https://t.me/foundry_rs
[tg-support-badge]: https://img.shields.io/endpoint?color=neon&logo=telegram&label=support&style=flat-square&url=https%3A%2F%2Ftg.sumanjay.workers.dev%2Ffoundry_support
[tg-support-url]: https://t.me/foundry_support
**[Install](https://getfoundry.sh/getting-started/installation)**
| [Docs][foundry-docs]
| [Benchmarks](https://www.getfoundry.sh/benchmarks)
| [Developer Guidelines](./docs/dev/README.md)
| [Contributing](./CONTRIBUTING.md)
| [Crate Docs](https://foundry-rs.github.io/foundry)
---
Blazing fast, portable and modular toolkit for Ethereum application development, written in Rust.
- [**Forge**](https://getfoundry.sh/forge) — Build, test, fuzz, debug and deploy Solidity contracts.
- [**Cast**](https://getfoundry.sh/cast) — Swiss Army knife for interacting with EVM smart contracts, sending transactions and getting chain data.
- [**Anvil**](https://getfoundry.sh/anvil) — Fast local Ethereum development node.
- [**Chisel**](https://getfoundry.sh/chisel) — Fast, utilitarian and verbose Solidity REPL.

## Installation
```sh
curl -L https://foundry.paradigm.xyz | bash
foundryup
```
See the [installation guide](https://getfoundry.sh/getting-started/installation) for more details.
## Getting Started
Initialize a new project, build and test:
```sh
forge init counter && cd counter
forge build
forge test
```
Interact with a live network:
```sh
cast block-number --rpc-url https://eth.merkle.io
cast balance vitalik.eth --ether --rpc-url https://eth.merkle.io
```
Fork mainnet locally:
```sh
anvil --fork-url https://eth.merkle.io
```
Read the [Foundry Docs][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](editors/README.md) 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](./CONTRIBUTING.md).
Join our [Telegram][tg-url] to chat about the development of Foundry.
## Support
Having trouble? Check the [Foundry Docs][foundry-docs], join the [support Telegram][tg-support-url], or [open an issue](https://github.com/foundry-rs/foundry/issues/new).
#### License