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
- Deploy implementation
$ forge script script/PunkgaReward_deployImpl.s.sol --rpc-url aura --private-key $PRIVATE_KEY --broadcast
- Deploy proxy
$ forge script script/PunkgaReward_deployProxy.s.sol --rpc-url aura --private-key $PRIVATE_KEY --broadcast
$ forge verify-contract --verifier sourcify --verifier-url https://indexer-v2.dev.aurascan.io/sourcify/ --rpc-url https://jsonrpc.serenity.aura.network/ <contract_address> src/PunkgaReward.sol:PunkgaReward
- Deploy implementation
$ forge script script/PunkgaReward_deployImpl.s.sol --rpc-url https://odyssey-evm.spidernode.net --private-key xxxx --broadcast
- Deploy proxy
$ forge script script/PunkgaReward_deployProxy.s.sol --rpc-url https://odyssey-evm.spidernode.net --private-key xxxx --broadcast
$ forge verify-contract \
--rpc-url https://odyssey.storyrpc.io/ \
--verifier blockscout \
--verifier-url 'https://odyssey-testnet-explorer.storyscan.xyz/api/' \
<contract_address> \
src/PunkgaReward.sol:PunkgaReward
$ cast <subcommand>
$ forge --help
$ anvil --help
$ cast --help