Skip to content

privacy-scaling-explorations/zk-kit.noir

Repository files navigation

ZK-Kit logo Noir

Github license GitHub Workflow test Code style prettier Commitizen friendly

ZK-Kit is a set of libraries (algorithms or utility functions) that can be reused in different projects and zero-knowledge protocols, making it easier for developers to access user-friendly, tested, and documented code for common tasks. ZK-Kit provides different repositories for each language - this one contains Noir circuits only.

Important

Installation of Nargo required for circuit tests.

🗂️ Repositories

📦 Packages

👥 Ways to contribute

Note

Need inspiration? Check this list of circuits from the Aztec team: https://aztecnetwork.notion.site/f06968995c124de1be359459775ca2cb?v=613d3cb893dd46899a5bd3793b01e63b.

🛠 Install

Clone this repository:

git clone https://github.com/privacy-scaling-explorations/zk-kit.noir.git

and install the dependencies:

cd zk-kit.noir && bun install

📜 Usage

Conventional commits

ZK-Kit uses conventional commits. A command line utility to commit using the correct syntax can be used by running:

git commit

Testing

Test the code with:

bun run test

Releases

  1. Create a new git tag:
bun version:tag <package-name> <version>
# e.g. bun version:tag merkle-trees 0.0.1
  1. Push the new git tag:
git push origin <package-name>-<version>
# e.g. git push origin merkle-trees-v0.0.1

After pushing the new git tag, a workflow will be triggered and will release a new version on Github with its changelog automatically.