Inspiration
We were exploring the capabilities of the OpenSea (the world's first and largest NFT marketplace) API, and wanted to make it easy for people in the NFT collector space to analyze and monitor projects they are interested in.
What it does
This NFT Data Visualization Dashboard pulls marketplace and analytical data from the OpenSea database of projects, purchases, assets, and accounts. By using this first-in-class Non-Fungible Token API for developers, we can use visualization software to display relevant and interesting data for collectors/investors.
How we built it
We designed custom collection, asset, and event classes that contained our harvested data for this project. Names of collections are scraped from OpenSea using the Selenium python package and Firefox WebDriver, raw data about these collections is retrieved from OpenSea using the OpenSea API in order to build Collection objects, and collection objects contain properties which are information regarding that collection. Collection objects also contain a list of Assets and events which represent specific NFTs in the collection and transactional information. Storage: The names of the NFT collections in our database are stored in a CSV file. Raw collection data is stored locally in JSON format after it has been retrieved from the OpenSea API. This is done to speed up the searching, sorting, and indexing of data in our project in addition to avoiding the OpenSea API limits.
Challenges we ran into
Implementing the complicated API and data visualization libraries was not simple, and involved a lot of work around when data did not line up. One major issue that was experienced was load times, and maxing out API calls. If all of the data is loaded whenever the page is opened then the project runs very slowly, and we can get blacklisted. We solved this issue by making property data all that is initially retrieved. When Asset or Event data needs to be loaded for a specific Collection, this data is loaded and appended to the Collection object. This is to speed up the loading and indexing times for our project.
Accomplishments that we're proud of
This API is fairly new, and navigating the existing documentation was difficult. Solving the runtime challenges was rewarding, and it gave us great experience with considering the limits of APIs.
What we learned
Despite access to powerful APIs, it is still often necessary to implement 'hacks' to make the data work for you. Not being NFT collectors ourselves,
What's next for NFT Data Visualization Dashboard
We ran out of time to host this site and make it accessible to users but could do this in the future.
Log in or sign up for Devpost to join the conversation.