A (nearly) real world staking rewards smart contract example
First, install dependencies:
~$ yarn install
Next, compile contracts:
~$ yarn run compile
(optional) run tests:
~$ yarn run test
yarn run fmt
will format the solidity/contract code.
yarn run fmt-test
will format the typescript/test code.