Playpen
Playpen is a set of modern, gas optimized staking pool contracts.
Features
- Support for both ERC20 staking and ERC721 staking
- Can start new reward period after the current one is over
- Gas optimized (see gas snapshot)
- Minimized error in reward computation (<10^-8) by using higher precision
- Well commented with NatSpec comments
- Fuzz tests powered by Foundry
- Cheap deployment using
ClonesWithCallData
(~81.7k gas)
Deployment
1.0.0
has been deployed to Ethereum mainnet at 0x94c563eD6Ef8848B987Bec3fE16E12023dc830Bc
Installation
To install with DappTools:
dapp install zeframlou/playpen
To install with Foundry:
forge install zeframlou/playpen
Local development
This project uses Foundry as the development framework.
Dependencies
forge install
Compilation
forge build
Testing
forge test
Why is it called Playpen?
So that whenever someone mentions it they have to say "Playpen is..."