Foundry es un conjunto de herramientas modular, portátil y ultrarrápido para el desarrollo de aplicaciones Ethereum escrito en Rust.
Foundry consiste en:
- Forge: Ethereum testing framework (como Truffle, Hardhat y DappTools).
- Cast: Navaja suiza para interactuar con EVM smart contracts, enviar transacciones y obtener datos de la cadena..
- Anvil: node local de Ethereum, similar Ganache, Hardhat Network.
- Chisel: Rápida, utilitaria y detallado solidity REPL.
$ forge build
$ forge test
Ejecutar test específico
$ forge test --match-contract ComplicatedContractTest --match-test testDeposit
Podemos ejecutar pruebas en nombres de archivos que coincidan con un patrón global con
$ forge test --match-path test/ContractB.t.sol
$ forge fmt
$ forge snapshot
$ anvil
$ forge script script/Counter.s.sol:CounterScript --rpc-url <your_rpc_url> --private-key <your_private_key>
$ forge create Contract --private-key PRIVATE_KEY
$ forge create Contract --interactive
$ cast <subcommand>
$ cast call CONTRACT_ADDRESS "functionName()"
$ forge --help
$ anvil --help
$ cast --help