Tribute is a user interface abstraction layer that enables users to program the interest generated by their cryptoassets to recipients they wish to support, including charities, open source projects, subscription services and others.
It is built on top of the decentralized finance stack of DAI, Compound and rDAI.
The Tribute platform is comprised of two basic modules - a widget for recipients to be able to receive Tribute (a portion of the interest generated by a user's cryptoassets) and a dashboard for users to track and manage their Tribute flows.
- clone repo
- run
yarn
ornpm install
for dependencies - run
yarn start
to start the application - dashboard and widget should be at localhost:1234/dashboard.html and localhost:1234/widget.html respectively
Tribute is an open source project dedicated to building an infrastructure network to enable the flows of directed interest across the web. In addition to this repo, contributions and discussions are welcomed at:
- Discourse: Tribute Forum
- Twitter: @Send_Tribute
Prerequisites
- Web3 Wallet like MetaMask
- Some Kovan ETH -- There is a Kovan ETH faucet at https://faucet.kovan.network/ that allows you to obtain 1 Kovan ETH (KETH) per 24 hours (github login required). 1 KETH should be more than sufficient to interact with Tribute.
- Some Kovan DAI -- You need Kovan DAI that is compatible with Compound's cDAI. Once you have some KETH, switch to the Kovan network in your wallet. There is a faucet for the correct Kovan DAI at: https://app.compound.finance/asset/cDAI You must first click the Enable DAI button and approve the wallet transactions, then click the Faucet button on the left, which will initiate a transfer of 100 Kovan DAI. You can use the DAI faucet as many times as you want (and have gas to pay for), though 100 DAI should be fine to experiment with Tribute.
Once you have Kovan DAI in your wallet (to see it in your ERC20 token-compatible web3 wallet, add the Custom Token at 0xbF7A7169562078c96f0eC1A8aFD6aE50f12e5A99), navigate to the Wallet tab on the Dashboard and click the Generate Tribute button.
This will trigger two transaction popups - one that grants a large allowance for rDAI to transform your Kovan DAI and the second to mint rDAI from your DAI. At the moment this will effect all of the Kovan DAI in your wallet. Upon success, you now have Tribute-enabled DAI. To reverse back to regular DAI, click the Disable Tribute button.
- calls Kovan DAI contract allowance() method with a very large allowance pointed at the rDAI contract
- calls Kovan rDAI mintWithNewHat() method with all kovan DAI in the user wallet
- calls Kovan rDAI redeemAll() method
- calls Kovan rDAI createHat() method with new set of recipients and proportions
- calls Kovan rDAI createHat() method with new set of recipients (omitting the specified recipient) and proportions
- calls Kovan rDAI payInterest() method on wallet sender address
- calls Kovan rDAI payInterest() method on specified address