V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
DIYgods
V2EX  ›  分享创造

💡 Unidata - 提供人类友好的 Web3 数据的便捷访问

  •  
  •   DIYgods ·
    DIYgod · 2022-05-07 18:16:55 +08:00 · 29174 次点击
    这是一个创建于 934 天前的主题,其中的信息可能已经有所发展或是发生改变。

    Web3 的魅力在于数据属于用户自己,但由于区块链低效的效率和设计,再加上数据格式标准的缺失,访问和展示自己或用户的 Web3 数据是一件极度困难的事情。所以我做了开源项目 Unidata,给 Web3 开发者提供人类友好的 Web3 数据的便捷访问。

    Ethereum NFT 数据是目前 Web3 最常使用的数据,所以我使用 Ethereum NFT 来举例。

    1. Ethereum NFT 使用 EIP-721 标准,它的数据格式非常“灵活”,比如一个 NFT 的图片可能根据发布者不同的喜好使用 image image_urlanimation_url 等各种不统一的字段,甚至根本不是一个图片,还可能是视频、3D 模型等,这给前端展示带来了很多麻烦。

    2. 获取一个地址拥有的全部 Ethereum NFT 也非常麻烦,由于 Ethereum 的设计,想要获取它需要读取这个地址的全部交易记录,而且 Ethereum 不止主网,还有 Polygon 、BSC 、Arbitrum 、fantom 、Gnosis 等各种侧链,这对前端是一个不可能的工作,目前各种各样的数据索引服务可以部分解决这个问题,但这些服务返回的数据格式各不相同、功能各有优劣、各支持了不同的链,应该如何选择呢?

    针对第一个问题,Unidata 设计了一系列友好和统一的数据格式,分为 Profiles 、Links 、Assets 、Notes 四个部分。Ethereum NFT 属于 Assets 的格式。通过 Unidata 返回的固定的数据格式,前端不再需要做麻烦的适配混乱的数据格式的工作。

    另外值得一提的是不止 Ethereum NFT ,Unidata 目前还支持了 Solana NFT ,Ethereum NFT 和 Solana NFT 的数据格式也是统一的,Unidata 还将继续支持更多的 Assets 来源,他们的格式也都会是统一的。

    解决完第一个问题,第二个问题也就很容易解决了。Unidata 的做法是把各个服务返回的数据统一成相同的格式并做聚合。比如 OpenSea 服务支持了主网,Alchemy 服务支持了 Polygon ,Moralis 服务支持了 BSC 、Arbitrum 、fantom ,POAP 服务支持了 Gnosis 链的 POAP NFT 。通过 Unidata 一行代码就可以同时使用这些服务同时获取到主网、Polygon 、BSC 、Arbitrum 、fantom 、POAP 的所有 NFT 了。可以在这里看在线演示

    除了 Assets ,Unidata 还有 Profiles 、Links 、Notes 三个部分。

    Assets 目前支持了 Ethereum NFT ( Mainnet 、Polygon 、BSC 、Arbitrum 、Fantom 、Gnosis 、POAP )、Solana NFT 、Alchemy 、Solscan 、Moralis 、OpenSea 。

    Notes 目前支持了 Mirror Entry 、Ethereum NFT Activity ( Mainnet 、Polygon 、BSC 、Arbitrum 、Fantom 、Gnosis 、POAP )、RSS3 。

    Profiles 目前支持了 ENS 、Crossbell 、Infura 。

    Links 目前支持了 CyberConnect 。

    还有很多正在不断添加中,可以在文档看目前支持的所有服务和数据源

    GitHub Org's stars Discord Twitter Follow

    5 条回复    2022-05-08 21:26:02 +08:00
    chenyuxiang
        1
    chenyuxiang  
       2022-05-07 21:36:36 +08:00 via iPad
    给你留下个评论吧,看你这儿好冷清。
    liuser666
        2
    liuser666  
       2022-05-07 22:48:48 +08:00
    我之前大致了解过区块链,不知道我理解的对不对。区块链里消息实时送达貌似达不到吧,没有即时反馈的应用没有未来的
    monkeyWie
        3
    monkeyWie  
       2022-05-07 23:36:26 +08:00 via Android
    是实时拉取的吗
    FlyingDough
        4
    FlyingDough  
       2022-05-08 02:26:43 +08:00
    看着比较有意思,先 Star 了
    shingle
        5
    shingle  
       2022-05-08 21:26:02 +08:00 via iPhone
    虽说是 web3 的事,怎么感觉做的 web2 接口的聚合啊
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5448 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 34ms · UTC 08:13 · PVG 16:13 · LAX 00:13 · JFK 03:13
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.