This project is about staking MASK tokens to earn ecosystem token rewards. It consists of two main contracts:
StakeManager.sol
, manages the staking of MASK tokens.
Reward.sol
, distributes ecosystem token rewards.
Chain | StakeManager | Reward |
---|---|---|
mainnet | 0x089f9e40 |
0xb55f6363 |
Build / Compile the contracts:
$ forge build
Delete the build artifacts and cache directories:
$ forge clean
Get a test coverage report:
$ forge coverage
Generate typechain (by hardhat):
$ npx hardhat compile
Deploy:
$ npx hardhat --network <network> deploy <tag>
Format the contracts:
$ forge fmt
Get a gas report:
$ forge test --gas-report
Run the tests:
$ forge test
Run the tests with detailed report:
$ forge test -vvvv
Verify contracts:
$ ETHERSCAN_API_KEY=<etherscan_api_key> forge verify-contract --watch --compiler-version "v0.8.23" \
[--verifier-url http://localhost:5000] \
--constructor-args $(cast abi-encode "constructor(string)" "string") \
<address> Some-contract