A decentralized contract annotation platform where users can crowdsource and vote on annotations for smart contracts functionality and be rewarded for making contributions via a DAO
The hardest part of open source, shouldn’t be trying to understand how the source code works. Unfortunately, that is a pretty big hurdle when trying to build in web3. Originally, when Sid and I began this hackathon, we set out to build a Defi wallet that made it easy for users to earn passive income on their crypto holdings, using protocols like Curve, Lido, Aave, and Yearn. During this process, we quickly discovered that one of the greatest challenges was figuring out which functions/contracts in each protocol were most relevant for our goals. We had to sift through multiple (lengthy) docs per protocol, which was very tedious and exhausting - especially for a sprint like a hackathon project. Thus our new idea was born: Our project is a “decentralized wikipedia” for smart contracts. Our goal is to make it easy for developers - newcomers from web2 or even advanced degens - to develop in and contribute to the Ethererum ecosystem. Our platform crowdsources the curation of contract annotation where users can (1) interact with a contract's functions, (2) contribute to explaining what each of the functions do, (3) vote other users' quality of explanations, and (4) rank functions in a contract by importance. Looking ahead, our goal is to build out a DAO where contributing users will be rewarded from a DAO treasury and perhaps, in some cases, by the protocols whose contracts are being annotated.
How it's made
This project is currently implemented as a frontend in REACT using the Etherscan API to collect contract ABIs as well as the Alchemy's web3 API. We also make use of ethers.js for hashing and firebase as our backend. The next stages of this project will implement a DAO with contracts deployed on mainnet as well as a native ERC20 token, which will be used to pay out rewards within our user ecosystem.