This is a flexible multi-token staking implementation using Diamonds pattern with AppStorage for shared state across facets.
- Clone this repo
- Install dependencies
$ forge install$ forge build$ forge script scripts/DeployDiamond.s.sol --rpc-url <YOUR_RPC_URL> --private-key <YOUR_PRIVATE_KEY>$ forge testNote: The staking platform supports ERC20, ERC721, and ERC1155 tokens with customizable reward mechanisms, time-based decay, and cooldown periods. The platform includes security features like ReentrancyGuard and proper implementation of receiver interfaces.