- This is a smart contract that can utilize Lido's stETH as a yield source of PoolTogether.
-
Currently, several interest-bearing tokens such as Compound Token (e.g. cDAI), xSushi, AAVE Token (e.g. aDAI) is used as yield source of PoolTogether. https://docs.pooltogether.com/protocol/yield-sources
-
stETH
is also ainterest-bearing token
(which is minted by depositing ETH as underlying asset). Therefore, stETH is suitable to be used as a yield source of PoolTogether. -
This repo is a integration between Lido's stETH and PoolTogether yieid source interface.
-
- Version for following the
Lido
smart contract- Solidity (Solc): v0.6.12
- Truffle: v5.1.60
- web3.js: v1.2.9
- openzeppelin-solidity: v3.4.1
- ganache-cli: v6.9.1 (ganache-core: 2.10.2)
- Install npm modules in the root directory
npm install
npm run migrate:local
- 1: Start ganache-cli
ganache-cli -d
(※ -d
option is the option in order to be able to use same address on Ganache-CLI every time)
(※ Please stop and re-start if an error of "Returned error: project ID does not have access to archive state"
is displayed)
- 2: Execute test of the smart-contracts
npm run test:LidoYieldSource
( truffle test ./test/test-local/LidoYieldSource.test.js --network local
)
- Video demo of test above.
https://youtu.be/dBGuZbPMlyA
- Lido.finance
-
[Deployed-addresses]: Mainnet & Görli testnet
https://github.com/lidofinance/lido-dao#deployments -
Smart contract: https://github.com/lidofinance/lido-dao/tree/master/contracts
- PoolTogether
- Yield Source Interface: https://github.com/pooltogether/yield-source-interface
- Doc (Explanation about PoolTogether yield source): https://docs.pooltogether.com/protocol/yield-sources
- Workshop: https://www.youtube.com/watch?v=sTsMt0zdOHY
- Lido - Open DeFi Hack
https://gitcoin.co/issue/lidofinance/lido-dao/343/100025668