Giter Club home page Giter Club logo

zns's Introduction

ZNS

The Zilliqa Name Service (ZNS) is a suite of smart contracts to make a naming system like DNS on the blockchain. ZNS connects the familiar and powerful name system mechanics to blockchain assets like addresses, websites and application data, as well as traditional dns records.

Getting Started

Requirements

  • Docker required
  • Node.js and Yarn are required as well.

Installing

yarn install

Testing

Tests run against standalone zilliqa development node. You will need to install Docker before.

Run zilliqa development node

Note: don't forget to perform docker login to be able to pull unstoppabledomains/zilliqa-dev-node image

yarn zilliqa:start

It's requires keep port 5555 open on local machine. If port already occupied - you may have zilliqa-dev-node already run. You can check this via command below.

Check node status

docker ps

You should see similar output if node was ran. Almost each docker command requires CONTAINER ID. Container id generates automatically on each docker run:

CONTAINER ID        IMAGE                     COMMAND                  CREATED             STATUS              PORTS                    NAMES
3ab2b677fd8f        us-central1-docker.pkg... "/usr/local/bin/isol…"   11 minutes ago      Up 11 minutes       0.0.0.0:5555->5555/tcp   mystifying_wright

Run test suite

yarn test

Stop zilliqa development node

yarn zilliqa:stop

Get logs from zilliqa development node

docker logs <CONTAINER ID>

Run node in foreground to get real-time logs on screen

docker run -p 5555:5555 us-central1-docker.pkg.dev/unstoppable-domains/zilliqa/zilliqa-dev-node

Build zilliqa-dev-node

You may need to rebuild docker image for zilliqa development node.

cd docker/build
docker build . -t zilliqa-dev-node

And run your brand new docker image:

docker run -p 5555:5555 zilliqa-dev-node

Push new zilliqa-dev-node image

To build & push a new version of node image use Build & Push Zilliqa Dev Node GitHub Action.

For an introduction to Zilliqa and Scilla and some of the design considerations look at the Zilliqa Reference.

There are 3 ZNS contract variants.

  • Registry – This contract where the ZNS names are stored. Registry mechanics are explained in detail in the Registry Reference.

  • Resolvers – In order to keep the size of the main ZNS contract low, the ZNS resolution is stored in separate contracts called Resolvers. Resolvers mechanics are explained in detail in the Resolvers Reference.

  • Registrars – These contracts manage the registration of new ZNS names. ZNS has 2 of them. An auction registrar, which implements open, ascending price, variable length auction. And a simple registrar listing all names for a fixed price designed to be put in place after the initial auction period. Registrar mechanics are explained in detail in the Registrar Reference.

License

zns's People

Contributors

aquiladev avatar bogdan avatar dependabot[bot] avatar derain avatar exarus avatar mvlabat avatar perfect-cents avatar theporpoise avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.