OpenViSTAI · Agents · Blockchain · Crypto
Menu
Developer Tools

Circomkit

Circomkit is a TypeScript-based CLI and library for developing and testing Circom zero-knowledge circuits, with workflows for compilation, witness computation, proof protocols, verification and artifact export.

Independent OpenViST project profile, based on linked sources.

Circomkit — OpenViST project profile in Developer Tools.
OpenViST project illustration. See the linked sources for product details.
Understand the project

Practical overview

When it fits

Use Circomkit when a Circom project needs a configuration-driven CLI, typed test helpers and one workflow spanning circuit artifacts, proof generation, verification and integration exports.

Who it is for

  • Circom circuit developers
  • Zero-knowledge application engineers integrating verifier contracts or calldata
  • Teams writing automated circuit tests with TypeScript, Chai or Mocha
  • Developers analysing R1CS and witness data

Documented uses

  • Compile Circom circuits and instantiate their main components.
  • Check circuit computations, expected outputs and soundness failures with typed testing utilities.
  • Generate witnesses and proofs, then verify proofs with public signals.
  • Create Solidity verifier contracts and calldata for integration.
  • Export R1CS and witness data as JSON.
Before you choose

Requirements & limits

The repository is public, open source and licensed under MIT. Circomkit is available as an installable package and is documented for CLI and TypeScript use.

  • Circom is a required prerequisite.
  • The supported proof protocols are Groth16, PLONK and FFLONK.
  • Supported prime fields include BN128, BLS12-381 and Goldilocks.
  • BN128 can use automatic phase-1 PTAU selection and download within the documented 2^28-constraint limit.
  • Non-BN128 fields require the developer to find PTAU files separately.

Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.

Source-based practical guide

Generate and verify a proof from a circuit input

Use a JSON input associated with a named circuit to generate a witness, create a proof, verify it and export Solidity calldata.

Before you start

  • A configured Circomkit circuit.
  • A JSON input stored under the documented inputs//.json path, or input values supplied through the programming interface.
  • A completed circuit workflow with the required setup artifacts.

Steps

  1. Place the circuit input JSON in the inputs folder under the target circuit name.

  2. Run the witness command for the circuit and input.

  3. Run the proof command for the same circuit and input.

  4. Run the verification command with the circuit and input, then run the calldata command to print Solidity calldata.

Expected outcome

Circomkit produces the documented witness and proof workflow outputs and prints calldata for the selected input when the relevant stages complete.

Guide limitations

  • The source describes commands and input conventions but does not provide a compatibility guarantee for a particular circuit or environment.
  • Proof generation and verification depend on the circuit-specific setup and configured protocol or field.
Evidence and transparency

Sources & review

Source record details
Source availability
Active
Sources checked
3 October 2026
Original website title
erhant/circomkit · Official homepage title · retained in its source language