This is handled using a new type of NFTs which we are calling execNFTs, wherein creators can mint their code as an NFT which can be integrated with any website. On minting a new AR Filter NFT, files are stored onto decentralised storage along with the NFT metadata. Then they can add an ask to the NFT or start an NFT auction. People can buy these NFTs to use these novel AR Filters. Users can also click pictures and post it directly on the platform which are stored in their own buckets. Optionally they can also add music to these posts.

SnapNFT showcase

How it's made

Protocol Labs (NFT.Storage): We are using NFT.Storage to store the NFT metadata during the minting process. Since they have inbuilt checks for proper metadata usage and ensure that the data persists forever using filecoin. Zora: Using Zora contracts to mint zNFTs. We set the store contentHash and metadataHash. Also, we set the ask by the creator for anyone to buy this NFT on the platform. Superfluid: Instead of buying, users can decide to rent the NFT for a short period to just click a picture and post it. This is handled through superfluid stream. Textile: Using textile to store all the required files including png, javascript, json etc. These files are encrypted and the user can change these files to update the NFT. Chainlink: Used for getting price feed for eth/usd and matic/usd to interconvert values between more than two assets allowing to pay invoice in several currencies. Covalent: Using to get NFT data from the chain and address input by the user. Which can be used on the platform as a filter. Audius: Using to choose from the trending songs on audius and add it to the user post. When looking at these posts, these songs are fetched using stream API and played along with the posts. Ceramic: Used to store the user posts data using idx service. This data can be used easily by multiple platforms to build better interfaces for the posts generated on SnapNFT. Polygon: The chainlink contract and the NFT data is all deployed on Polygon Mumbai Testnet. Unlock: Have added a subscription lock for some features on our site. Polygon Deployments (Mumbai): Chainlink Price Consumer: 0x429EFa36ff406aA9DCAE57A1488dE2097ABb1556 Rinkeby Deployments: Chainlink Price Consumer: 0xA9dEd60aA6a4d4fE96f32F917d0cB1BfEDA5d962 Unlock Contract: 0x7f075931f5b7c9b69663090315b70f56a8f80487

Technologies used