1. Staking contract which accepts DEFI as the staking token and gives out DEFI as the reward.
2. The user should be rewarded a total of 1 DEFI token per day for every 1000 DEFI tokens staked.
3. The rewards must be emitted to the user every block.
4. (Stretch Goal) The user should be able to stake multiple times.
5. The user should be able to withdraw at any time.
6. The user should be able to view their rewards at any given time.
7. Upon withdrawal, the entire stake amount and the rewards should be sent to the user.
8. There is no partial withdrawal of the stake amount
maheswaranx15 / tokenstaking Goto Github PK
View Code? Open in Web Editor NEWWrite a staking contract which accepts DEFI as the staking token and gives out DEFI as the reward.