Some of us team members joined the crypto space earlier last year and bought some tokens in the hope that we can make a quick buck. I personally fell victim to emotional trading and felt that not a lot can be done by just holding tokens in a centralized exchange. I missed out on a lot of amazing defi projects and the contributions they were making towards social good. That's why we decided to create a project which allows amateur traders like us to participate in different protocols while earning rewards on the hodled tokens.
What it does
Our platform allows users to participate in pools wherein they can hold their token until a certain target price of the token is achieved. Every time they deposit, a portion of their deposit amount is given to NGOs or charities that we hope to partner with in future. The NGOs can create NFTs depicting real world events and the way they are tackling issues. This way, a user of our platform can contribute to the betterment of our society while earning rewards ! Here is a link to know more about the project and the incentivisation method.
How we built it
- We started of with learning all about NFTs and different DeFi protocols. We proceeded with creating smart contracts which interacted with Aave protocol as they were one of the sponsors. This took us sometime as the math behind this protocol was quite necessary for our project to be functional.
- After we were done with integrating Aave lending protocol, we moved ahead with figuring out how NFTs can best be used on our platform and how best to reward the users of our platform. We decided to give rewards to the users who were the top token holders. For example, reward top 5 holders of LINK token, BAT token etc.
- To do this distribution, we setup an external chainlink adapter which gets the details of the top 5 token holders from a server that we setup.
- After we were done with this, we integrated front-end with our smart contracts with the help of Graph protocol as an API layer.
Challenges we ran into
- AAVE deposit() & withdrawal()
- Testing AAVE
- Unable to test with ganache
- Chainlink node setup
- Distributing tokens to top tier users
Accomplishments that we're proud of
- Building a complete project in 1 month from :
- start to end,
- smart contracts to front-end
- Gaining experience in blockchain space & Defi world
- Using an oracle and api layer for the first time.
What we learned
- Friendship, communication & time management
- Truffle framework
- AAVE protocol(Lending & protocols)
- Interconnecting our contract with different protocols
- Chainlink oracle & Node operating
- Indexing data with TheGraph
- ERC1155 & ERC721 multifungible tokens(Openzeppelin)
- NFTs on Opensea
What's next for HodlTogether
- Improve UI/UX of the website.
- Deploy the dapp on layer 2 scaling solution Polygon as Aave protocol exists their.
- Explore crosschain defi protocols support.
- Explore various other tokens suitable for holding.
- Explore stocks and other assets suitable for holding.
- NFT creation and distribution using lottery system (something similar to PoolTogether).