All the data an IC app needs to make seamless experiences, accessible directly on the IC. DAB is an open internet service for NFT, Token, Canister, and Dapp registries.

Related tags

Cryptography dab
Overview

DAB

Fleek Discord

👀 Overview

An Internet Computer open internet service for data.

All the data an IC app needs to make a seamless experience, accessible directly on the IC. DAB is an open internet service for NFT, Token, Canister, and Dapp registries.

🛣️ DAB's Roadmap (Order is not set)

  • NFT List
  • Canister List
  • Token List
  • Dapp List

#️⃣ V0.2.0 - DAB's Current Registries.

In v0.2.0, DAB has two registries that developers can integrate with, or submit items to:

  • The NFT List (auto-surface NFTs in apps and multi-standard support).
  • The Canister List (associate metadata to Canister IDs and auto-surface it in UIs)

🎨 The NFT List

The NFT list DAB provides a list of NFTs that apps & developers can consume to surface new NFTs as they are listed in DAB, instead of manually adding them one by one.

DAB's NFT list is standard agnostic and through the DAB-js library, developers can easily integrate and make calls to any NFT collection on the list regardless of their NFT standard interface (EXT, Departure Labs, etc.), because in its library DAB wraps all standards into a common javascript interface.

🖌️ Current NFT List & Making New Submissions

You can see the current listed NFT collections in the link below. Want to submit a new NFT collection to the list? Use the form below.

The review process for submissions is currently manual and done by the DAB core team; in the future we will automate the process, and migrate to a community-governed and trustless system.

🧰 Start Integrating DAB's NFT List into your App

To interact with DAB's services you need to use the DAB-js library. Read our documentation or visit the DAB-js repository to get started.

🛢️ The Canister List

The Canister List is a canister registry where you can associate Canister IDs to a metadata profile (name, front-end URL, description, logo...) to make them more discoverable by UIs.

Apps that show Canister IDs in their UIs/apps can integrate to the Canister List to check if that Canister ID has associated metadata, and display it for their users to see in a more descriptive and human-readable way.

  • It helps make Canister ID human-readable and identifiable.
  • It helps give users information to judge whether to trust a canister or not
  • It can help in the future to identify duplicates or impersonations.

View the Canister Registry Source Code

🖌️ Submitting/Adding a Canister ID to the Canister List

Want to submit a new Canister ID to the registry to associate metadat to it, and have integrated apps auto-surface it? Use the form below.

For V0.2.0, the review process for submissions is manual and done by the DAB core team; in the future we will automate the process, and migrate to a community-governed and trustless system.

We are exploring an automated way of adding Canister IDs and their metadata to the registry. The main issues are confirming the controller is the one submitting it, and then adding a verification layer to avoid duplicates/phishing/impersonation.

🧰 Start Integrating DAB's Canister List into your App

To interact with DAB's services you need to use the DAB-js library. Read our documentation or visit the DAB-js repository to get started.


⛱️ Sandbox

In the Sandbox directory, you can find in-development projects, such as the canister directory, and other data registries that the DAB team is exploring. Developers are welcome to review and provide feedback.


License

DAB © Fleek LLC 2021 - License (GPL-3.0)

Comments
  • Rocky/add category field

    Rocky/add category field

    Summary

    Added category field in canister metadata. The category is one of 3 possible values (Asset, Nft, Service) and so I implemented it as an enum but I'm not sure if that's correct or not.

    @Nima-Ra I know I'm missing something on the upgrade script, cause I don't know how it would populate the fields otherwise. Just not sure how you do that to be honest

    opened by rocky-fleek 2
  • Some errors with getAllUserNFTs func on localhost

    Some errors with getAllUserNFTs func on localhost

    Hello, dab 0.4.4 has some errors with getAllUserNFTs func. In your file nfts_refistry.js this principal not work with plug principal. But if call with string, it work with errors. const userPrincipal = user instanceof principal_1.Principal ? user : principal_1.Principal.fromText(user); 50 errors stack please, help with this problem

    const result = await window.ic.plug.getPrincipal();
    const collections = await getAllUserNFTs(
                {user: principal.toString()}
            );
    

    "@psychedelic/dab-js": "^0.4.4", p.s. with stoic same error

    invalid 
    opened by progforyou 1
  • docs(readme): update overview to include goal and updated roadmap

    docs(readme): update overview to include goal and updated roadmap

    Update docs in prep for open sourcing.

    TODO

    • [x] provide goal
    • [x] provide roadmap
    • [x] license
    • [ ] describe profile interactions
    • [ ] walkthrough interactions (dfx)
    opened by kanej 1
  • Update the JS add script to match the new interface + enhancement

    Update the JS add script to match the new interface + enhancement

    The scripts/add.js script needed an update to match the new interface of the canister registry. Also, there was room for flow improvements. User does not need to pass the canister id of the registry every time they interact with the canister anymore.

    enhancement 
    opened by EmperorOrokuSaki 0
  • Maintenance Release

    Maintenance Release

    About this release:

    • [x] Auto NFT submission from the NFT registry to the canister registry
    • [x] Auto Tokens submission from the NFT registry to the canister registry
    • [x] New project structures that are more human-readable
    enhancement 
    opened by Nima-Ra 0
Releases(v1.0.0)
  • v1.0.0(Feb 14, 2022)

    DAB V1.0.0: New Architecture and Registry Standard

    We’re changing the way that DAB is wired in order to improve flexibility and add inclusivity for developers looking to create their own registries!

    With this update, we are making significant strides towards the decentralization of the DAB open internet service by empowering developers to create and manage their own registries through the use of our new DAB Registry Standard.

    This comes with an update to DAB-js and our registries. Don’t fret, it’s not code-breaking! You’ll only need to update your DAB-js version on your dApps and sites that integrate it. Applications won’t break with this release as we will wait a month to deprecate old methods/registries.

    For more information, please read this release's medium article.

    Source code(tar.gz)
    Source code(zip)
  • v0.2.0-canister_registry(Sep 30, 2021)

    🚨 V0.2.0 RELEASE! 🚨

    It’s release day 😎 It’s time to hit V0.2.0, and bring an entirely new registry (the Canister List); as well as an update to DAB-js to support the Departure Labs NFT Standard (for the NFT List!).

    • You can read the article about this release here.
    • You can stay up to date with DAB using its Twitter account, here.
    • And you can learn more about the registry with its documentation, here.
    Source code(tar.gz)
    Source code(zip)
  • v0.1.0-nft(Sep 17, 2021)

    🚨 V0.1.0 RELEASE! 🚨

    Hey Internet Computer, meet DAB! 👋 A set of data registries with all the data an IC app needs to surface & integrate tokens, NFTs, and metadata in their experiences 🔥 Starting with V0.1.0, the NFT list 🎨

    • You can read the article about this release here.
    • You can stay up to date with DAB using its Twitter account, here.
    • And you can learn more about the registry with its documentation, here.
    Source code(tar.gz)
    Source code(zip)
Owner
Psychedelic
Decentralized product studio focused on building products on Web3, Ethereum, and the Internet Computer.
Psychedelic
Simple PoC to issue JSON Web Tokens (JWTs) with a canister on the Internet Computer.

JWT Issuer Proof of Concept Overview Simple PoC to issue JSON Web Tokens (JWTs) with a canister on the Internet Computer. It allows the issuance of tw

Dominic Wörner 7 Oct 13, 2022
NFT & Marketplace Contracts with royalties and fungible token support. Sample React app included.

NFT Market Reference Implementation A PoC backbone for NFT Marketplaces on NEAR Protocol. Reference Changelog Changelog Progress: basic purchase of NF

NEAR App Examples 156 Apr 28, 2022
reth-indexer reads directly from the reth db and indexes the data into a postgres database all decoded with a simple config file and no extra setup alongside exposing a API ready to query the data.

reth-indexer reth-indexer reads directly from the reth db and indexes the data into a postgres database all decoded with a simple config file and no e

Josh Stevens 306 Jul 12, 2023
Outp0st is an open-source UI tool to enable next-level team collaboration on dApp development over Terra blockchain

Outp0st is an open-source UI tool to enable next-level team collaboration on dApp development over Terra blockchain

Genolis 2 May 4, 2022
DIP721 - An Internet Computer Non-fungible Token Standard

DIP721 - Introduction DIP721 is an ERC-721 style non-fungible token standard built mirroring its Ethereum counterpart and adapting it to the Internet

Psychedelic 48 Nov 24, 2022
ARYA Network is a polkadot/substrate based chain for Non-fungible Token platform on which we can own sell and buy the NFT's on polkadot network.

ARYA Network ARYA Network is a polkadot/substrate based chain for Non-fungible Token platform on which we can own sell and buy the NFT's on polkadot n

Pankaj Chaudhary 6 Dec 20, 2022
Bespoke toolkit for Non-fungible token (NFT) technology 🚀

Bespoke toolkit for Non-fungible token (NFT) technology ?? What is Onft? Instead of forcing a consensus algorithm or peer networking on you, Onft prov

Owez 5 Jan 9, 2022
Yi Token by Crate Protocol: the primitive for auto-compounding single token staking pools.

yi Yi Token by Crate Protocol: the primitive for auto-compounding single token staking pools. About Yi is a Solana primitive for building single-sided

Crate Protocol 12 Apr 7, 2022
Local blockchain for Free TON DApp development and testing.

TON OS Startup Edition Local blockchain for Free TON DApp development and testing. Have a question? Get quick help in our channel: TON OS Startup Edit

TON Labs 35 Jan 2, 2023
Blue Terra is a decentralized protocol for the global democratization of stable and accessible property rights.

??️ The official Blue Terra KYC program. Blue Terra holders interact with this program to activate the leases embedded in their NFTs.

Blue Terra 1 Jan 31, 2022
Designed for rapid iteration in IC Canister development projects.

IC_Utils Designed for rapid iteration in IC Canister development projects. IcContext IcContext provides the context for ic canister object invocation,

AlphaQ 83 Nov 13, 2023
React Native (Expo) + JWT Authentication + Rust ICP canister

React Native (Expo) app with JWT Authentication and IC Rust canister This is a Proof-of-Concept React Native Expo mobile application that uses JSON We

Luca Bertelli 5 May 2, 2024
An easily deployable service to monitor mission-critical SPL token accounts

Vault watcher Monitoring critical spl-token accounts in real time Table of contents Introduction Usage Configuration Configuration examples Grafana In

null 21 Nov 29, 2022
An all-in-one IBC protocol providing fungible token transfer, interchain account, and async query functionalities

ICS-999 An all-in-one IBC protocol providing fungible token transfer, interchain account (ICA), and query (ICQ) functionalities, implemented in CosmWa

larry 9 Apr 1, 2023
Bitcoin Push Notification Service (BPNS) allows you to receive notifications of Bitcoin transactions of your non-custodial wallets on a provider of your choice, all while respecting your privacy

Bitcoin Push Notification Service (BPNS) Description Bitcoin Push Notification Service (BPNS) allows you to receive notifications of Bitcoin transacti

BPNS 1 May 2, 2022
A guide for Mozilla's developers and data scientists to analyze and interpret the data gathered by our data collection systems.

Mozilla Data Documentation This documentation was written to help Mozillians analyze and interpret data collected by our products, such as Firefox and

Mozilla 75 Dec 1, 2022
Terabethia - A Bridge and Messaging Protocol between Ethereum and the Internet Computer.

Terabethia - A Bridge Between Ethereum & the Internet Computer Terabethia is a bridge between Ethereum & the Internet Computer that contracts in both

Psychedelic 36 Dec 26, 2022
An API and test-app that exposes zcash functionality for app consumption

Zingolib This repo provides both a library for zingoproxyclient and zingo-mobile, as well as an included cli application to interact with zcashd via l

ZingoLabs 5 Dec 15, 2022
A preview of the integration between Bitcoin and the Internet Computer.

Bitcoin Integration Developer Preview Overview The integration between the Internet Computer and Bitcoin will enable developers to build canisters tha

DFINITY 39 Sep 21, 2022