Awesome Open Source
Awesome Open Source

StakeWise smart contracts

CircleCI CodeCov Discord

The StakeWise smart contracts for tokenized staking and non-custodial validators.

  • Extensible: It is possible to create your own contract with logic for accumulating validator deposit amount.
  • Upgradable: By using OpenZeppelin Upgrades, it's possible to fix bugs and critical issues when the contracts are deployed to the mainnet. Only the Solos contract cannot be upgraded to prevent the possibility of changing staker's withdrawal credentials.
  • Role-based access: By having Operators, Admins, Pausers and Oracles roles, it is possible to restrict user capabilities.
  • Integration friendly: Any contract state emits event. Applications can monitor and act on these events.

Deployment

  1. Install dependencies:

    yarn install
    
  2. Compile optimized contracts:

    yarn compile --optimizer
    
  3. Define network parameters in hardhat.config.js. Learn more at Hardhat config options.

  4. Change initial settings accordingly.

  5. If you are deploying to the network without ETH2 deposit contract, run the following commands:

    yarn deployVRC --network rinkeby
    
  6. If you are deploying to the network without DAI contract, run the following commands:

    yarn deployDAI --network rinkeby
    
  7. Deploy StakeWise contracts to the selected network:

    yarn deploy --network rinkeby
    

Documentation

You can find the documentation for every contract in the contracts directory. The documentation is also available on the official documentation page.

Contributing

Development of the project happens in the open on GitHub, and we are grateful to the community for contributing bugfixes and improvements.

License

The project is GNU AGPL v3.


Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
javascript (70,303
ethereum (741
solidity (293
smart-contracts (178
dapp (110
validator (106