An NFT launchpad & smart vault that ensures funds are used responsibly.
NFT rugpulls has resulted in $2.8B in losses! The lost of trust is devastating the onboarding of web3 users into NFTs. Less trading volume, less new projects, less creators using nfts for utility or fundraising. Blockchains are built for trustless interaction, but there are a lack of tools that ensure organizations building on top of blockchains are trustworthy.
Atestamint comes from the word 'testament' - meaning tangible proof or evidence. We've developed a smart vault/launchpad that is unlocked by community attestations. With Atestamint, creators have to meet their promises and tokenholders can attest for funds to be unlocked one step at a time.
The platform also generates an 'Atestamint Score' which is an on-chain reputation score thats based off of the creator's ability to meet their milestones and the user's engagement through attestations. This scoring system helps users find credible projects and can even help other platforms differentiate projects that they should be rewarding (think getting credit or a discount on your Infura bill for being a great project!)
We built a FE with nextjs that calls 2 custom contracts: Atestamint-V2 and Vault-V2. The Atestamint contract receives user input parameters like NFT supply, price & metadata. It deploys NFT collections using the Zora Factory, ensuring that the created NFTs are correctly associated with the Vault contract. It links the NFT contract to the vault as the recipient address.
The Vault contract verifies unique humans through WorldID which ensures attesters are genuine. It uses EAS to create attestations and manage custom schemas while maintaining a record of positive and negative votes for and against a particular action. It facilitates the unlocking of funds based on voting outcome and allows for modifications to the schema through updateSchemaID.
Sponsor Technologies:
Worldcoin: WorldID is used to provide sybil resistance to the platform, ensuring that real users are minting NFTs, creating milestones, and making attesting. It also ensures one person one vote.
Zora: the Atestamint factory contract utilizes createDrops and createEditions to let creators deploy and mint NFTs on Optimism and Zora simply, safely and quickly.
Graph: A custom subgraph queries our two contracts in order to provide an Atestamint score. Other platforms can use these graphs in order to attain Atestamint scores of our projects and provide differentiated services.
EAS: The platform uses Ethereum Attestation Service to create attestations schemas and manage them. Users vote through attestations and the attestation data is kept on-chain. A custom schema passes NFT metadata and helps our contract verify the attestation.
Covalent: The platform functions like an NFT launchpad and we attain NFT data such as transaction history, from Covalentâs APIs on the front end.
OptimismRetroPGF: Atestamint is launched on Optimism with a key function for anyone to create projects and milestones and have a community of users attest to their completion. This can be done proactively or retroactively. Platforms like Gitcoin can create a Atestamint project and bring a community of users to attest on the project and unlock a vault of funds. Charities can utilize Atestamint to raise funds and unlock it when milestones are met. The Atestamint Scoring system measures people, products and their projects and tracks their impact on-chain.
Particularly Hacky Details: The Atestamint score wasnât part of the original idea, but we realized that the data the platform was generating and that was available on-chain could be used for other platforms to discern on-chain credibility, so we decided to use the Graph. We looked at Charity ratings for inspiration when it came to rating a projectâs ability to meet their roadmaps and came across Charity Navigatorâs âBeacon System.â Using this as a modal, we came up with a weighted formula. Fulfillment Score (F): Calculated as A / B (where A is the number of completed milestones, and B is the total number of milestones). Attestation Ratio (R): Calculated as X / C (where X is the number of attestations, and C is the total number of unique minters). Attestation Rate (A): Calculated as Y / T (where Y is the number of attestations, and T is the time period between mint out and unlock). - in days
Other hacky details would be getting around the difficulty of working on EAS and WorldID at the same time (...WorldCoin works in Eth goerli and doesnât work in Op goerli EAS works in op goerli and doesnât work in eth goerli) so it required us to test them separately until we deployed on mainnet.
Presentation: https://www.canva.com/design/DAFrawuTrgI/vqz76zXaUkPm1y7hIPPaDA/view?utm_content=DAFrawuTrgI&utm_campaign=designshare&utm_medium=link&utm_source=publishsharelink
Explainer video: https://www.canva.com/design/DAFrb7DtJUI/pPPqcTbO6lauuyKVg6lxEw/watch?utm_content=DAFrb7DtJUI&utm_campaign=designshare&utm_medium=link&utm_source=publishsharelink