Grants are currently a major funding mechanism for many projects in web3. However, the application process is often confusing, the review processes are generally opaque, and the source of funds is not often made entirely transparent. The infinite garden sets out to rectify all this. Part better grants process, part collective art project: it merges many web3 primitives to make the overall community experience a more positive one.
- Anyone can create a proposal, which means paying the cost to mint an NFT.
- This NFT is displayed on a web page - the infinite garden.
- Stewards of this NFT can update the tokenURI to whatever they like to represent ongoing progress with their pplication and work.
- Anyone can vote on any NFT.
- Voting costs ETH.
- Upvotes are added to the "rank" of the grant.
- Downvotes subtract from the rank.
- The "gardener" of the contract (ideally a grants DAO or other such organisation) can either harvest or prune grants.
- Harvesting means paying out a grant. Pruning means removing the grant from the directory and burning the NFT.
- If a grant you upvoted gets harvested, you share in a portion of the rewards depending on how much you voted with.
- If a grant you downvoted gets pruned, you get your money back plus a share of whatever upvotes were added to that grant by others.
This project uses hardhat for the smart contract framework, React for the dapp, and wagmi to connect the frontend to the contracts. We're grateful to wonderful people like ricmoo for libraries like ethers, and many others for the foundational work they do to make this kind of thing possible.