Setup Environment
The SDK is written in TypeScript and is available in the form of a set of npm packages. It is available to use within both Node and browser environments.
Installation
Make sure you have Node (>v18) and npm installed on your machine. Then install the SDK packages by adding the following node modules to your package.json
file:
dependencies": {
"@zkfi-tech/account": "^1.0.3",
"@zkfi-tech/babyjubjub": "^1.0.2",
"@zkfi-tech/core": "^1.3.5",
"@zkfi-tech/shared-types": "^1.0.0",
"@zkfi-tech/transaction": "^1.3.5",
"@zkfi-tech/utils": "^1.0.2",
"@zkfi-tech/zk-prover": "^1.1.3",
"fixed-merkle-tree": "^0.7.3"
}
# pnpm
pnpm install
# yarn
yarn install
# npm
npm install
Installing SnarkJs
The SDK depends on the snarkjs
package for ZK proof generation. You need to install it separately from the SDK, depending on the environment you are working in:
Node
For node, you can install snarkjs
simply as an npm package and make it a globally available variable:
# pnpm
pnpm add snarkjs
# yarn
yarn add snarkjs
# npm
npm i snarkjs
Set as global variable:
import * as snarkjs from 'snarkjs';
globalThis.snarkjs = snarkjs;
Browser
For the browser, you need to include it as a JS script. You can get the minified script from the official snarkjs
repo here. After downloading and including the script in your project, put a script tag in your HTML:
<script src="/<path-to-snarkjs>/snarkjs.min.js"></script>
Including this script automatically makes snarkjs
a globally available variable. Make sure this variable is available before you invoke transaction proof generation.
Alright, setup done!
Last updated