Skip to content

Deploy Avalanche Name Services (ANS) #1

@Devilla

Description

@Devilla

Introduction to Ava Name Services (ANS)

The Avalanche Name Service (ANS) is a distributed, open, and extensible naming system based on the Avalanche blockchain.

ANS’s job is to map human-readable names like ‘alice.avax’ to machine-readable identifiers such as Avalanche C Chain addresses, other cryptocurrency addresses, content hashes, and metadata. ANS also supports ‘reverse resolution’, making it possible to associate metadata such as canonical names or interface descriptions with Ethereum addresses.

ANS has similar goals to DNS, the Internet’s Domain Name Service, but has significantly different architecture due to the capabilities and constraints provided by the Avalanche blockchain. Like DNS, ANS operates on a system of dot-separated hierarchical names called domains, with the owner of a domain having full control over subdomains.

Top-level domains, like ‘.avax’ and ‘.test’, are owned by smart contracts called registrars, which specify rules governing the allocation of their subdomains. Anyone may, by following the rules imposed by these registrar contracts, obtain ownership of a domain for their own use. ANS also supports importing in DNS names already owned by the user for use on ANS.

📓 Tasks:

Avalanche Name Services deploying the ens-contracts to be deployed
- ANS Registry
- PublicResolver — 'avax', '.one', 'dns' formats
- Registrar contracts, to jobs of the registrar, have the public resolvers and Price functions oracles and commitment functions
- BaseRegistrarImplmentation

🍴 Create / Take the forks

  1. Right now the UI is essentially blocked with the legacy contracts, we have to remove these functions,
  2. Remove the Logo, and some of the ENS related UI
  3. Then implement the functionality with the Fuji network, Mainnet network
  4. Publish the website on the avans.domains

🚀 Deployment of the subgraph is going to be like /ans/subgraph

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions