mirror of
https://github.com/privacy-scaling-explorations/zk-kit.git
synced 2026-04-22 03:00:15 -04:00
ef25af8e86bc079a96a1242c73ffc9207fc2befd
Former-commit-id: 47bb16e6cbc3b985103ac96fad969f294bd41015 [formerly 6e6c4e1abe1ef37770ec601b3092bf03336f4d84] [formerly 47c87dc14899083220c29745dfa1725f1c1c2733 [formerly 339af2bb48]]
Former-commit-id: 255c72679e652d62ddb0907afe9d5c8c2a36e310 [formerly c8eaac09ffeab7a44055c6fba8bc3aa669c04784]
Former-commit-id: 7f12bad91af24037812a23f5d6d50d00d13ddb10
Libsemaphore
A monorepo of JavaScript libraries for Semaphore.
A library that allows for easy access and interoperability for Semaphore and RLN constructs. It is meant to be used by third-party applications to easily integrate with Seamphore and RLN. The library provides an API (Semaphore and RLN) for:
- Identity generation
- Proof generation
- Proof verification
The library is structured as a three separate npm packages:
@libsem/identity: Exposes utilities for Zk identity generation, necessary for interacting with the Zk protocols supported by this library,@libsem/protocols: Utilities for proof genration and verification for various Zk protocols,@libsem/types: Helper package which exposes the types used byidentityandprotocolspackages.
All the packages provide tests which can be used as a guide for interaction.
📦 Packages
| Package | Version | Downloads | Size |
|---|---|---|---|
| @libsem/identity |
|
|
|
| @libsem/protocols |
|
|
|
| @libsem/types |
|
|
🛠 Install
Clone this repository and install the dependencies:
$ git clone https://github.com/appliedzkp/libsemaphore.git
$ cd libsemaphore && npm i
📜 Usage
$ npm run lint # Lint all packages.
$ 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.
Languages
TypeScript
95.5%
TeX
4.4%