🤖
LNS Documentation
  • Introduction
  • Terminology
  • Frequently Asked Questions
  • Tokenomics
  • LNS Deployments
  • Registrar Frequently Asked Questions
  • Deploying LNS on a Private Chain
  • DNS Registrar guide
  • Bug Bounty Program
  • ENS Improvement Proposals
    • ENSIP-1: ENS
    • ENSIP-2: Initial Hash Registrar
    • ENSIP-3: Reverse Resolution
    • ENSIP-4: Support for contract ABIs
    • ENSIP-5: Text Records
    • ENSIP-6: DNS-in-ENS
    • ENSIP-7: Contenthash field
    • ENSIP-8: Interface Discovery
    • ENSIP-9: Multichain Address Resolution
    • ENSIP-10: Wildcard Resolution
    • ENSIP-11: EVM compatible Chain Address Resolution
    • ENSIP-12: Avatar Text Records
  • Dapp Developer Guide
    • LNS Enabling your DApp
    • LNS Libraries
    • Working with LNS
    • Resolving Names
    • Managing Names
    • Registering & Renewing Names
    • LNS Front-End Design Guidelines
    • LNS as NFT
  • Contract API Reference
    • Name Processing
    • Registry
    • ReverseRegistrar
    • PublicResolver
    • .bch Permanent Registrar
      • Registrar
      • Controller
    • DNS Registrar
  • Contract Developer Guide
    • Resolving Names On-chain
    • Writing a Resolver
    • Writing a Registrar
    • LNS Support Chat
Powered by GitBook
On this page
  • Javascript
  • Java
  • Kotlin
  • Python
  • Go
  • Command-line
  • Delphi
  • Next Steps
Edit on GitHub
  1. Dapp Developer Guide

LNS Libraries

PreviousLNS Enabling your DAppNextWorking with LNS

Last updated 3 years ago

LNS support is available in many popular languages. If you know of a library that is not listed here, please .

Javascript

  • , maintained by the ENS developers

  • , maintained by the LNS developers

  • (deprecated)

Which Javascript library should I use?

If you are already using web3.js or ethers.js, and do not require functionality such as creating subdomains, transferring ownership, or updating resolvers, use built in LNS features of these libraries.

If you are using React and only need to do forward and reverse resolution of LNS names with built in UI, use react-ens-address.

If you want to have LNS instance deployed into your dev environment, you may want to use embark.io or waffle.io which allows you to configure/deploy LNS registry in your smartBCH test instance.

Otherwise, use ensjs.

Accessing smart contracts directly

All the LNS smart contracts are published as @bchdomains/lns-contracts

This is how you include abi into your frontend code.

import {
  ENS,
  PublicResolver
} from '@bchdomains/lns-contracts'`

This is how you import our smartcontract within Solidity.

import '@bchdomains/lns-contracts/contracts/registry/ENS.sol';

Java

Kotlin

Python

Go

Command-line

Delphi

Next Steps

- also see

Once you've chosen a library, read to learn how to use your chosen LNS library in your application.

send us a PR
ensjs
ethers.js
web3.js
react-lns-address
embark.io
waffle.io
ethereum-ens
npm module.
web3j
KEthereum
web3.py
web3.py ENS docs
go-ens
ethereal
delphereum
Working with LNS