Version License

ZkBNB JavaScript SDK

Go SDK

The ZkBNB JavaScript SDK provides a thin wrapper around thin all the apis provided by ZkBNB, including a simple key manager for signing txs and sending signed txs to ZkBNB.

Install

Using npm:

> npm install @bnb-chain/zkbnb-js-sdk

Using yarn:

> yarn add @bnb-chain/zkbnb-js-sdk

Using pnpm:

> pnpm add @bnb-chain/zkbnb-js-sdk

Using jsDelivr CDN:

<script src="https://cdn.jsdelivr.net/npm/@bnb-chain/zkbnb-js-sdk/dist/web/zk.js"></script>

Using unpkg CDN:

<script src="https://unpkg.com/@bnb-chain/zkbnb-js-sdk/dist/web/zk.js"></script>

Usage

Browser

Use directly in the browser via script tag:

<!DOCTYPE html>
<html lang="en">
<head>
  <script src="https://cdn.jsdelivr.net/npm/@bnb-chain/zkbnb-js-sdk/dist/web/zk.js"></script>
</head>
<body>
  <script>
    const client = new Zk.Client('http://172.22.41.67:8888');

    (async () => {
      const res = await client.getAccountInfoByAccountIndex(1);
      console.log(res)
    })()
  </script>
</body>
</html>

ESM

If you use module bundler such as Webpack, Rollup, etc:

import { Client } from '@bnb-chain/zkbnb-js-sdk';

const client = new Client('http://172.22.41.67:8888');

(async () => {
  const res = await client.getAccountInfoByAccountIndex(1);
  console.log(res)
})()

CJS

Using SDK in Nodejs:

const { Client } = require('@bnb-chain/zkbnb-js-sdk');

const client = new Client('http://172.22.41.67:8888');

(async () => {
  const res = await client.getAccountInfoByAccountIndex(1);
  console.log(res)
})()

ZkBNB Crypto API

The wrapper for zkbnb Crypto.

Usage

Because of WASM different usage scenarios, there are two packages:

run on Node.js

const { ZkCrypto } = require('@bnb-chain/zkbnb-js-sdk/zkCrypto');

console.log('getEddsaPublicKey:', ZkCrypto.getEddsaPublicKey('12312123123'))

run on browser

import { ZkCrypto } from '@bnb-chain/zkbnb-js-sdk/zkCrypto/web';

;(async () => {
  const { getEddsaPublicKey } = await ZkCrypto();
  console.log('getEddsaPublicKey:', getEddsaPublicKey('12312123123'));
})();

CHANGELOG

CHANGELOG