You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
arnaucube b6aa6dd391
Merge pull request #2 from web3-master/main
8 months ago
LICENSE init commit 1 year ago Update 8 months ago

Awesome Circom

A curated list of repos related to Circom.


Cryptographic primitives

Cryptographic primitives in Circom

Cryptographic primitives in other languages

Cryptographic primitives implemented in other languages which are compatible with Circom implementations

  • Javascript
    • circomlibjs - Javascript library to work with circomlib circuits
  • Go
    • go-iden3-crypto - Poseidon & mimc hash, babyjubjub elliptic curve
    • arbo - Efficient MerkleTree compatible with circomlib, which parallelizes computation by CPUs
    • go-merkletree - MerkleTree compatible with circomlib
  • Rust
    • poseidon-rs - Poseidon hash function compatible with circomlib
    • babyjubjub-rs - BabyJubJub elliptic curve compatible with circomlib


  • snarkjs - zkSNARK implementation in JavaScript & WASM
  • rapidsnark - zkSNARK proof generation written in C++ and intel assembly
  • ark-circom - Arkworks bindings to Circom's R1CS, for Groth16 Proof and Witness generation in Rust
  • go-circom-prover-verifier - Go implementation of the Groth16 zkSNARK Prover and Verifier compatible with Circom
  • go-circom-witnesscalc - Witness Calculator in go, calling WASM

Code editors & tooling

  • zkrepl - Online playground for Circom circuits
  • vscode plugin - VSCode syntax highlighting plugin
  • vim plugin - Vim syntax highlighting plugin
  • Shield Cli - SHIELD is a development framework for circom developers. SHIELD is a tool to provide libraries, plugins, and testing tools to ensure code quality and security.
  • Circomspect - static analyzer and linter for the Circom programming language

Tutorials & docs


Papers on Circom related constructions and primitives implemented in the circomlib standard library

Projects using Circom