banner
DIYgod

Hi, DIYgod

写代码是热爱,写到世界充满爱!
github
twitter
bilibili
telegram
email
steam
playstation
nintendo switch

💡 Unidata - Provides convenient access to human-friendly Web3 data.

title: 💡 Unidata - Convenient Access to User-Friendly Web3 Data
date: 2022-05-06 23:27:01
tags: Sharing 境#

The charm of Web3 lies in the fact that data belongs to the users themselves. However, due to the inefficiency and design of blockchain, as well as the lack of data format standards, accessing and displaying Web3 data for oneself or users is an extremely difficult task. That's why I created the open-source project Unidata, which provides convenient access to user-friendly Web3 data for Web3 developers.

Ethereum NFT data is currently the most commonly used data in Web3, so I will use Ethereum NFT as an example.

  1. Ethereum NFT uses the EIP-721 standard, and its data format is very "flexible". For example, an NFT's image may use various inconsistent fields such as image, image_url, or animation_url depending on the preferences of the publisher. It may even not be an image at all, but a video, 3D model, etc. This brings a lot of trouble to frontend display.

  2. Obtaining all Ethereum NFTs owned by an address is also very troublesome. Due to Ethereum's design, to obtain it, you need to read all transaction records of that address. Moreover, Ethereum is not only the mainnet, but also various sidechains such as Polygon, BSC, Arbitrum, Fantom, Gnosis, etc. This is an impossible task for the frontend. Currently, various data indexing services can partially solve this problem, but these services have different data formats, different functionalities, and support different chains. How should one choose?

To address the first problem, Unidata has designed a series of friendly and unified data formats, divided into four parts: Profiles, Links, Assets, and Notes. Ethereum NFT belongs to the Assets format. With the fixed data format returned by Unidata, the frontend no longer needs to adapt to chaotic data formats.

It is worth mentioning that Unidata not only supports Ethereum NFTs, but also supports Solana NFTs. The data formats for Ethereum NFTs and Solana NFTs are also unified, and Unidata will continue to support more sources of Assets, all of which will have unified formats.

Once the first problem is solved, the second problem becomes easy to solve. Unidata's approach is to unify the data returned by various services into the same format and aggregate them. For example, OpenSea supports the mainnet, Alchemy supports Polygon, Moralis supports BSC, Arbitrum, Fantom, POAP supports the Gnosis chain's POAP NFT. With just one line of code in Unidata, you can simultaneously use these services to obtain all NFTs from the mainnet, Polygon, BSC, Arbitrum, Fantom, and POAP. You can see a live demo here.

image

In addition to Assets, Unidata also has Profiles, Links, and Notes.

Assets currently supports Ethereum NFTs (Mainnet, Polygon, BSC, Arbitrum, Fantom, Gnosis, POAP), Solana NFTs, Alchemy, Solscan, Moralis, OpenSea.

Notes currently supports Mirror Entry, Ethereum NFT Activity (Mainnet, Polygon, BSC, Arbitrum, Fantom, Gnosis, POAP), RSS3.

Profiles currently supports ENS, Crossbell, Infura.

Links currently supports CyberConnect.

There are many more being continuously added. You can see all supported services and data sources in the documentation here.

GitHub Org's stars Discord Twitter Follow

image

Loading...
Ownership of this post data is guaranteed by blockchain and smart contracts to the creator alone.