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 --help
-
Relative stability: Anchored or pegged --> $1.00 ✅
- Chainlink price Feed ✅
- Set a function to exchange ETH & BTC --> $$$ ✅
-
Stability Mechanism (Minting): Algorithmic (Decentralized) ✅
- People can only mint the stablecoin with enough collateral (coded) ✅
-
Collateral: Exogenous ( crypto ) ✅
- wETH
- wBTC
-
calculate health factor function ✅
-
set health factor if debt is 0 ✅
-
added getters view functions ✅
-
invariants/properties ✅
-
proper oracle use ✅
-
Write more invariants
-
Write more unit tests
-
Audit