Bako Docs
  • Welcome
  • Developers
    • ID
      • Architecture
      • Contracts
      • SDK
        • Quickstart
        • Bako ID Client
        • Registry Contract
Powered by GitBook
On this page
  • Envio Indexer
  • Server API
  • Image generator
  1. Developers
  2. ID

Architecture

PreviousIDNextContracts

Last updated 4 months ago

The core of Bako ID is defined by two main on-chain components (Registry and Manager) and also includes other on-chain components for interacting with the Handle (Token and Resolver).

It also includes other off-chain utility components for interacting with the handle, such as an Indexer, an image generator, and an API that together form the Bako ID Client.

Envio Indexer

The Bako ID indexer was built to easily consume data without needing to interact with the on-chain data. It indexes the events emitted from the Manager contract, storing the following information:

  • Record: A structure that composes the record along with its associated network.

  • AddressResolver: A reverse resolver for names, mapping between Address <> Handle Name.

Server API

Our server is part of the Bako ID Client, where it works in conjunction with the indexer. It provides methods for:

  • Resolving a handle

  • Resolving an address

  • Listing handles associated with an address

All methods can be used in both Mainnet and Testnet environments.

Image generator

A serverless function responsible for converting an SVG into a URL that returns a PNG image response to be used in the NFT.

Repository Link
Repository Link

Registry

One of the main contracts that allows the registration of new handles, ownership control, metadata registration, among other methods that interact with the handle.

Manager

Responsible for storing and managing handle information, such as the resolver lookup and handle ownership.

Resolver

It provides methods for resolving the handle, such as looking up the resolver by name, checking ownership, and searching for the name by an address.

Token

Represents the NFT contract as well as stores the metadata of the handle.

Repository Link

Repository Link
Repository Link
Repository Link
Repository Link