3.0.2 • Published 4 days ago

@verida/vda-name-client v3.0.2

Weekly downloads
-
License
Apache-2.0
Repository
-
Last release
4 days ago

VDA Name Client

A client library for registering / unregistering a human readable username alias for a DID.

DID's can have multiple usernames (although the smart contract currently limits to just 1)

Installation

yarn add @verida/vda-name-client

Usage

This library can be in read only mode where it just fetches DID's and usernames or in read and write mode where it can also register / unregister usernames.

Read Only

Setup the library in read only mode for reading usernames and DIDs:

import { VeridaNameClient } from '@verida/vda-name-client'
import { EnvironmentType } from '@verida/types'

// Create name Client
const nameClient = new VeridaNameClient({
    environment: EnvironmentType.TESTNET
})

Get usernames for a DID

const usernames = await nameClient.getUsernames(DID_ADDRESS);
console.log(usernames)

Get DID for a username

const USERNAME = 'johndoe.vda'

const did = await nameClient.getDid(USERNAME);
console.log(did)

Read and Write

In order to write to the blockchain, you will require a Polygon private key with MATIC tokens.

Setup the library in read and write mode to support the above get methods and register / unregister usernames:

import { VeridaNameClient } from '@verida/vda-name-client'
import { EnvironmentType, Web3CallType } from '@verida/types'

// DID address that controls the proof of eligibility to mint the SBT
const DID_ADDRESS = '0x...'
// DID private key that controls the proof of eligibility to mint the SBT
const DID_PRIVATE_KEY = '0x...'
// Polygon private key that will fund blockchain transactions
const POLYGON_PRIVATE_KEY = '0x...'
// How to make blockchain requests. This should be 'web3' unless using Verida's meta transaction server.
const CALL_TYPE = 'web3'
// (Optional) Polygon RPC URL (Mumbai testnet)
const RPC_URL = 'https://rpc-mumbai.maticvigil.com'

// Create name Client
const nameClient = new VeridaNameClient({
    environment: EnvironmentType.TESTNET
    callType: CALL_TYPE,
    did: DID_ADDRESS,
    signKey: DID_PRIVATE_KEY,
    web3Options: {
        rpcUrl: RPC_URL,
        privateKey: POLYGON_PRIVATE_KEY
    }
})

Register a name

const USERNAME = 'johndoe.vda'

await nameClient.register(USERNAME)

Unregister a name

const USERNAME = 'johndoe.vda'

await nameClient.unregister(USERNAME)
3.0.3

4 days ago

4.0.0-alpha.0

16 days ago

3.0.2

2 months ago

3.0.2-alpha.0

4 months ago

3.0.1

5 months ago

3.0.0

5 months ago

2.4.0-rc5

5 months ago

2.4.0-rc2

5 months ago

2.4.0-rc1

5 months ago

2.3.6

8 months ago

2.3.5

8 months ago

2.3.3-rc1

1 year ago

2.3.4-rc1

1 year ago

2.3.4-rc2

1 year ago

2.3.0

1 year ago

2.2.1

1 year ago

2.2.0

1 year ago

2.3.1

1 year ago

2.1.3

1 year ago

2.3.4

1 year ago

2.3.3

1 year ago

2.3.0-rc1

1 year ago

2.3.0-rc2

1 year ago

2.3.3-rc2

1 year ago

2.3.0-rc3

1 year ago

2.1.1

1 year ago

2.0.5

1 year ago