Lisk Name Service (LNS) Tutorial

How to create a blockchain application that offers a domain name service for blockchain accounts, similar to the Domain Name System, (DNS), and the Ethereum Name Service, (ENS).

This service allows an account to register one or multiple .lsk domains for a certain amount of time, (1-5 years).

If an account registers a domain, it becomes a human readable identifier for the account and can then be used to refer to the account instead of the (less human-readable) Lisk32 account address.

Additionally, it is possible to create TXT and CNAME records for each domain owned by an account.

LNS application overview

lns overview

Chapters

Chapter Content

Chapter 1: Blockchain development

This chapter covers how to perform the following:

  • …​create a blockchain application with a module which provides a Lisk name service. The Lisk Name Service allows users to register domain names for their accounts. It can then resolve the human readable domain names to their corresponding account address, making the domain name a human readable alias for the address.

  • …​create three different transaction assets:

    • Register: To register a new domain name.

    • Reverse Lookup: To define the reverse lookup for an account address.

    • Update Records: To update the records of a domain name.

  • …​connect the Dashboard plugin to interact with the LNS app during development.

Chapter 2: Frontend development

This chapter covers how to perform the following:

  • …​create a plugin that provides a React.js frontend for the LNS blockchain application.

Chapter 3: Extending the CLI

This chapter covers how to perform the following:

  • …​create lns commands.

  • …​try out the new CLI commands.

Chapter 4: Unit & functional tests

This chapter covers how to perform the following:

  • …​write unit tests for the newly implemented transactions assets.

  • …​write functional tests for the LNS module.