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/DeployBridge.s.sol \
--rpc-url <URL_RPC> \
--broadcast$ cast <subcommand>$ forge --help
$ anvil --help
$ cast --helpsource .env
cast send $POLYGON_TEST_TOKEN_ADDR \
"approve(address,uint256)" \
$POLYGON_TEST_CONTRACT_ADDR 1000000000000000000 \
--private-key $PRIVATE_KEY \
--rpc-url $RPC_POLYGON_TEST_URL
cast send $POLYGON_TEST_CONTRACT_ADDR \
"lock(address,uint256,string)" \
$POLYGON_TEST_TOKEN_ADDR 1000000000000000000 bettery1se3ugp5026ty89mxrd2gra7ptyfcge0srvjmme \
--private-key $PRIVATE_KEY \
--rpc-url $RPC_POLYGON_TEST_URL