Skip to content

privacy-scaling-explorations/zk-kit.rust

Repository files navigation

ZK-Kit logo Rust

Github license GitHub Main Workflow Coverage Status

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 Rust code only.

🗂️ Repositories

📦 Crates

Package Version Downloads Audited
imt Crate version Crate downloads
smt Crate version Crate downloads
pmt Crate version Crate downloads

👥 Ways to Contribute

🛠 Setup

git clone https://github.com/privacy-scaling-explorations/zk-kit.rust.git && make setup

This will clone this repository and install the required development dependencies locally.

📜 Usage

You can view the available tasks with:

make

Code Quality and Formatting

You can proof your code for consistency with our formatting rules:

make check

or automatically format the code (performed automatically in a pre-commit hook):

make fmt

To lint and analyze the code for potential bugs:

make lint

or automatically apply lint fix suggestions:

make fix

Conventional commits

ZK-Kit uses conventional commits.
Compliance with these rules is enforced with a commit-msg git hook, which was set up when you ran make setup.

Testing

To test the code:

make test

Build

To build crates:

make build