mirror of
https://github.com/privacy-scaling-explorations/zk-kit.git
synced 2026-04-22 03:00:15 -04:00
Former-commit-id: 2d846e4bed1cc0e2055325e252fd68ba471892ee [formerly fd94e38385a9184aa3d2ad6c80f64034329e5e80] [formerly 06e15eb82860c588b8604f1174c8a1e9d61b155a [formerly 637c65dec7]]
Former-commit-id: c0e2d5334bb9207690300a55717018aacbc43f97 [formerly 50dc13594b3ecd0c4ddb614c42588885ad00dbb0]
Former-commit-id: 6e5406d8e34c83d2b74f78263e77108352fc85a4
137 lines
5.2 KiB
Markdown
137 lines
5.2 KiB
Markdown
<p align="center">
|
|
<h1 align="center">
|
|
ZK-kit
|
|
</h1>
|
|
<p align="center">A monorepo of reusable JS libraries for zero-knowledge technologies.</p>
|
|
</p>
|
|
|
|
<p align="center">
|
|
<a href="https://github.com/appliedzkp/zk-kit/blob/master/LICENSE">
|
|
<img alt="Github license" src="https://img.shields.io/github/license/appliedzkp/zk-kit.svg?style=flat-square">
|
|
</a>
|
|
<a href="https://github.com/appliedzkp/zk-kit/actions?query=workflow%3Atest">
|
|
<img alt="GitHub Workflow test" src="https://img.shields.io/github/workflow/status/appliedzkp/zk-kit/test?label=test&style=flat-square&logo=github">
|
|
</a>
|
|
<a href="https://eslint.org/">
|
|
<img alt="Linter eslint" src="https://img.shields.io/badge/linter-eslint-8080f2?style=flat-square&logo=eslint">
|
|
</a>
|
|
<a href="https://prettier.io/">
|
|
<img alt="Code style prettier" src="https://img.shields.io/badge/code%20style-prettier-f8bc45?style=flat-square&logo=prettier">
|
|
</a>
|
|
<a href="https://lerna.js.org/">
|
|
<img alt="Lerna" src="https://img.shields.io/badge/maintained%20with-lerna-8f6899.svg?style=flat-square">
|
|
</a>
|
|
</p>
|
|
|
|
ZK-kit is a set of NPM modules (algorithms or utility functions) that can be reused in different projects and zero-knowledge protocols, making it easier for developers to access ready-to-use and tested libraries for common tasks.
|
|
|
|
---
|
|
|
|
## 📦 Packages
|
|
|
|
<table>
|
|
<th>Package</th>
|
|
<th>Version</th>
|
|
<th>Downloads</th>
|
|
<th>Size</th>
|
|
<tbody>
|
|
<tr>
|
|
<td>
|
|
<a href="https://github.com/appliedzkp/zk-kit/tree/master/packages/identity">
|
|
@zk-kit/identity
|
|
</a>
|
|
</td>
|
|
<td>
|
|
<!-- NPM version -->
|
|
<a href="https://npmjs.org/package/@zk-kit/identity">
|
|
<img src="https://img.shields.io/npm/v/@zk-kit/identity.svg?style=flat-square" alt="NPM version" />
|
|
</a>
|
|
</td>
|
|
<td>
|
|
<!-- Downloads -->
|
|
<a href="https://npmjs.org/package/@zk-kit/identity">
|
|
<img src="https://img.shields.io/npm/dm/@zk-kit/identity.svg?style=flat-square" alt="Downloads" />
|
|
</a>
|
|
</td>
|
|
<td>
|
|
<!-- Size -->
|
|
<a href="https://bundlephobia.com/package/@zk-kit/identity">
|
|
<img src="https://img.shields.io/bundlephobia/minzip/@zk-kit/identity" alt="npm bundle size (scoped)" />
|
|
</a>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
<a href="https://github.com/appliedzkp/zk-kit/tree/master/packages/protocols">
|
|
@zk-kit/protocols
|
|
</a>
|
|
</td>
|
|
<td>
|
|
<!-- NPM version -->
|
|
<a href="https://npmjs.org/package/@zk-kit/protocols">
|
|
<img src="https://img.shields.io/npm/v/@zk-kit/protocols.svg?style=flat-square" alt="NPM version" />
|
|
</a>
|
|
</td>
|
|
<td>
|
|
<!-- Downloads -->
|
|
<a href="https://npmjs.org/package/@zk-kit/protocols">
|
|
<img src="https://img.shields.io/npm/dm/@zk-kit/protocols.svg?style=flat-square" alt="Downloads" />
|
|
</a>
|
|
</td>
|
|
<td>
|
|
<!-- Size -->
|
|
<a href="https://bundlephobia.com/package/@zk-kit/protocols">
|
|
<img src="https://img.shields.io/bundlephobia/minzip/@zk-kit/protocols" alt="npm bundle size (scoped)" />
|
|
</a>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
<a href="https://github.com/appliedzkp/zk-kit/tree/master/packages/merkle-tree">
|
|
@zk-kit/merkle-tree
|
|
</a>
|
|
</td>
|
|
<td>
|
|
<!-- NPM version -->
|
|
<a href="https://npmjs.org/package/@zk-kit/merkle-tree">
|
|
<img src="https://img.shields.io/npm/v/@zk-kit/merkle-tree.svg?style=flat-square" alt="NPM version" />
|
|
</a>
|
|
</td>
|
|
<td>
|
|
<!-- Downloads -->
|
|
<a href="https://npmjs.org/package/@zk-kit/merkle-tree">
|
|
<img src="https://img.shields.io/npm/dm/@zk-kit/merkle-tree.svg?style=flat-square" alt="Downloads" />
|
|
</a>
|
|
</td>
|
|
<td>
|
|
<!-- Size -->
|
|
<a href="https://bundlephobia.com/package/@zk-kit/merkle-tree">
|
|
<img src="https://img.shields.io/bundlephobia/minzip/@zk-kit/merkle-tree" alt="npm bundle size (scoped)" />
|
|
</a>
|
|
</td>
|
|
</tr>
|
|
<tbody>
|
|
</table>
|
|
|
|
## 🛠 Install
|
|
|
|
Clone this repository and install the dependencies:
|
|
|
|
```bash
|
|
$ git clone https://github.com/appliedzkp/zk-kit.git
|
|
$ cd zk-kit && npm i
|
|
```
|
|
|
|
## 📜 Usage
|
|
|
|
```bash
|
|
$ npm run lint # Syntax check with ESLint (npm run lint:fix to fix errors).
|
|
$ npm run prettier # Syntax check with Prettier (npm run prettier:fix to fix errors).
|
|
$ npm run commit # Interactive Commitizen commit.
|
|
$ npm run test # Test all packages (with common coverage).
|
|
$ npm run build # Create a JS build for each package.
|
|
$ npm run publish:fp # Publish packages on npm.
|
|
```
|
|
|
|
You can see the other npm scripts in the `package.json` file.
|