« Back
View My NFTs
1 Followers
Follow
  • NFT

Moonriver

Life-time
Contributions Received

  • $ 9 Community Contribution
  • 0 Contributors
  • 16 Votes Received
Vision
View your NFT's and create a short url to share with your friends
Description

View my NFT is a dApp that allows users to view the NFT's that they have in their wallet. It also allows them to create a short url that can easily be shared with friends or for your own future reference.

With this application, two sources of indexed data is being used, 1 - Covalent API 2 - theGraph

Originally this project started out using the template provided by Covalent and focused on using their API's. However I found that using both API's to be a more reliable way to get the data needed.

The** Covalent API** is really quite nice and I would have preferred to use it entirely but the missing data and errors returned on larger wallets prevented this. In an attempt to help remedy the missing data situation I scraped a list of all NFT **projects on **MoonRiver **and created a **Node.JS service that would hit every individual NFT metadata endpoint for Covalent. This took days to run as I limited the requests to 4 per second only and across all the NFT projects there were more than 1/2 Million requests to be made.

A few days later and a few server failures from running out of disk space I had helped index all the NFT metadata, this also helped in retrieving wallet balances as I could see more data appear after the NFT metadata was requested.

But it was not enough, I investigated **theGraph **and saw that it was possible to use it to get data as well, this was more reliable for getting wallet contents, The downside was CORS issues, so I spun a **Node.JS **micro service to tunnel these requests for me. This was further extended to allow for Short URL creation with a database backend. The NFT metadata was mostly in JSON files on IPFS. **IPFS **well that was another can of worms wasn't it.

**IPFS **is a great idea and using it all the needed metadata gets collected, when it came to displaying images IPFS was often slow, prone to timeouts and this inspired me to find a better solution. I did, seems that some people/services index what is on IPFS or act as a node that hosts this. These were great to use and provided a much quicker experience when using the site.

Wrangling the data, I implemented black lists as well as special handling for a number of NFT projects as there is no uniform standard that is adhered to. It has been a fun experience and got my first taste of Web3. I hope to see the Covalent API continue to develop more and make accessing onChain data simpler for us dev's

This project was a great experiment to get into the space and see the community in Web3, the enthusiasm from other participants and get my hands dirty with **Moonriver, Covalent, theGraph, ReactJS. **

    • Moonriver Grant Hackathon

      Closed  · 2022/03/22 16:00 - 2022/05/23 14:00
      • 0.58 MOVR Community contribution
      • - Contributors
      • 16 Votes received