跳到主要内容

Nara SDK

naracli 不仅是命令行工具,同时也是一个 TypeScript/JavaScript SDK,你可以在代码中直接调用它与 Nara Chain 交互。

安装

npm install naracli

基础用法

连接到 Nara Chain

import { NaraSDK } from 'naracli';

const sdk = new NaraSDK({
rpcUrl: 'https://mainnet-api.nara.build/',
});

const connection = sdk.getConnection();
const slot = await connection.getSlot();
console.log('当前 Slot:', slot);

使用 Solana Web3.js

由于 Nara 完全兼容 Solana,你也可以直接使用 @solana/web3.js

import { Connection, PublicKey } from '@solana/web3.js';

const connection = new Connection('https://mainnet-api.nara.build/');

// 查询余额
const balance = await connection.getBalance(
new PublicKey('你的地址')
);
console.log('余额:', balance / 1e9, 'NARA');

导出的模块

SDK 导出以下主要模块:

// SDK 核心
import { NaraSDK, type NaraSDKConfig } from 'naracli';

// 常量
import { DEFAULT_RPC_URL, DEFAULT_QUEST_PROGRAM_ID } from 'naracli';

// Quest(PoMI)功能
import {
getQuestInfo,
hasAnswered,
generateProof,
submitAnswer,
submitAnswerViaRelay,
parseQuestReward,
type QuestInfo,
type ZkProof,
type SubmitAnswerResult,
type SubmitRelayResult,
type QuestOptions,
} from 'naracli';

// Solana 基础类型(便捷重导出)
import { PublicKey, Keypair, Transaction } from 'naracli';
import BN from 'naracli';

常量

常量说明
DEFAULT_RPC_URLhttps://mainnet-api.nara.build/主网 RPC 地址
DEFAULT_QUEST_PROGRAM_IDQuest 程序地址PoMI 程序 ID

下一步