Foundry is a blazing fast, portable and modular toolkit for Ethereum application development written in Rust.
Foundry consists of:
- Forge: Ethereum testing framework (like Truffle, Hardhat and DappTools).
- Cast: Swiss army knife for interacting with EVM smart contracts, sending transactions and getting chain data.
- Anvil: Local Ethereum node, akin to Ganache, Hardhat Network.
- Chisel: Fast, utilitarian, and verbose solidity REPL.
$ forge build$ forge test$ forge fmt$ forge snapshot$ anvil$ forge script script/Counter.s.sol:CounterScript --rpc-url <your_rpc_url> --private-key <your_private_key>$ cast <subcommand>$ forge --help
$ anvil --help
$ cast --helpcast wallet import <account_name> --interactive
# add private key
# add passwordforge script script/<ContractName>.s.sol --rpc-url $ANVIL_RPC_URL --account defaultKey --sender <senderAccountAddress> --broadcast -- --vvv
# --vvv for verbosity.
# --broadcast to broadcast the deployment
# --account <Account name> to load the account name from keystore.
# --sender sender account address.