@darenft/nft2-client
TypeScript icon, indicating that this package has built-in type declarations

2.0.4 • Public • Published

nft2-sdk

This is DareNFT 2.0 Protocol's officially supported node.js client library.

License

Installing

Install by yarn

yarn add @darenft/nft2-client

or using npm

npm add @darenft/nft2-client

Note: node version should be greater than 16.14

Quick start

const apiKey = 'xxx'; // must get from NT2 console 
const apiEndpoint = 'https://protocol-api.nft2scan.com'; // API endpoint, optional
const nft2Client = new NFT2Client(apiKey, apiEndpoint);

await nft2Client.initialize().then(() => {
    console.log('Client init success: ', nft2Client);
});

The SDK will automatic load configuration from API server (GET: /configs/internal-config). However, you can set your alternative configuration as you want:

const configs: ChainConfig[] = [{
  chainId: 1,
  providerUrl: "https://eth-mainnet.nodereal.io/v1/xxx",
  factoryAddress: "0xabcd",
  subQueryEndpoint: "https://api.subquery.network/sq/xxx"
}]
nft2Client.updateConfig(configs)

Example get list NFTs of a wallet on Ether:

const chainId = 1; // chain Ether
const nft2Contract = nft2Client.getNFT2Contract(chainId);

const nfts = await nft2Contract.getNFTsByOwner(ownerAddress, {limit: 20, offset: 0});
console.log('nft: ', nfts);

Example get NFT data saved on Data Registry:

const chainId = 1; // chain Ether
const dataRegistry = nft2Client.getNFT2DataRegistry(chainId);

const datas = await dataRegistry.getNFTMetaData(
    '0xabcd', // NFT address
    '0' // token ID
);
console.log('datas: ', datas);

Architecture

Class Diagram

Run sample

Install libs

yarn install

Edit .env file in /samples folder

cp .env.example .env

Run 1 sample

yarn ts-node samples/[file_name].ts

Run tests

yarn test -g protocolclient

Run with debug logging

yarn test-debug -g protocolclient

Testing a single file

yarn test-single test/xxx.ts
yarn test-debug test/

Package Sidebar

Install

npm i @darenft/nft2-client

Weekly Downloads

4

Version

2.0.4

License

MIT

Unpacked Size

139 kB

Total Files

53

Last publish

Collaborators

  • annguyen-darenft
  • clipsub
  • vuquangthinh
  • vitcon