Awesome
Foundry Template
Foundry Template for arbitrum testnet
Usage
Create a .env
file
API_KEY_INFURA=your infura api key [Used for sepolia testnet]
API_KEY_ARBISCAN=your arbiscan api key [Used for arbitrum sepolia testnet]
API_KEY_ETHERSCAN=your etherscan api key [Used for sepolia testnet]
SEPOLIA_WALLET_PRIVATE_KEY=your wallet private key [Used for Deploy.s.sol]
Install deps
forge install
Build
Build the contracts:
forge build
Clean
Delete the build artifacts and cache directories:
forge clean
Compile
Compile the contracts:
forge build
Test
Run the tests:
forge test -vv
Get a test coverage report:
forge coverage
Get a gas report:
forge test --gas-report
Deploy
Anvil
anvil
Deploy to Anvil
forge script script/Deploy.s.sol --fork-url localhost --broadcast -vvvv
Sepolia:
Deploy to Arbitrum-Sepolia
forge script script/Deploy.s.sol:DeployScript --rpc-url arbitrum_sepolia --broadcast --verify -vvvv
Destroy the contract
forge script script/Destroy.s.sol:DestroyScript --rpc-url arbitrum_sepolia --broadcast -vvvv
result of "Destroy the contract"
https://sepolia.arbiscan.io/tx/0x4878408b3ea0fede3524bcec5ee6b1c048380e2fa5784f0ba20652b6840aba5c
For instructions on how to deploy to a testnet or mainnet, check out the Solidity Scripting tutorial.
Format
Format the contracts:
forge fmt