@bnb-chain/zkbas-js-sdk
v3.0.0
Published
zkbas JavaScript SDK
Downloads
149
Readme
ZkBAS JavaScript SDK
The ZkBAS JavaScript SDK provides a thin wrapper around thin all the apis provided by ZkBAS, including a simple key manager for signing txs and sending signed txs to ZkBAS.
Install
Using npm:
> npm install @bnb-chain/zkbas-js-sdk
Using yarn:
> yarn add @bnb-chain/zkbas-js-sdk
Using pnpm:
> pnpm add @bnb-chain/zkbas-js-sdk
Using jsDelivr CDN:
<script src="https://cdn.jsdelivr.net/npm/@bnb-chain/zkbas-js-sdk/dist/web/zk.js"></script>
Using unpkg CDN:
<script src="https://unpkg.com/@bnb-chain/zkbas-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/zkbas-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/zkbas-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/zkbas-js-sdk');
const client = new Client('http://172.22.41.67:8888');
(async () => {
const res = await client.getAccountInfoByAccountIndex(1);
console.log(res)
})()
Zkbas Crypto API
The wrapper for Zkbas Crypto.
API List
https://github.com/bnb-chain/zkbas-crypto/blob/master/wasm/legend/main.go#L33-L59
Usage
Because of WASM different usage scenarios, there are two packages:
run on Node.js
const { ZkCrypto } = require('@bnb-chain/zkbas-js-sdk/zkCrypto');
console.log('getEddsaPublicKey:', ZkCrypto.getEddsaPublicKey('12312123123'))
run on browser
import { ZkCrypto } from '@bnb-chain/zkbas-js-sdk/zkCrypto/web';
;(async () => {
const { getEddsaPublicKey } = await ZkCrypto();
console.log('getEddsaPublicKey:', getEddsaPublicKey('12312123123'));
})();