ZK Studio is the workbench for circuit work. You edit the circuit source on one side and see what it compiles to on the other — the constraints, the ACIR, a graph of the circuit — and from there you can diff constraints across revisions, probe witnesses, and run a prove step, without leaving the page.
Why it exists
The bugs that matter in a circuit live at the constraint level, not the source level — a signal that reads fine in Noir or Circom can still be under-constrained. Studio puts source and constraints side by side so you can see both at once: edit the circuit, watch the constraint count and findings update, and test whether a witness can diverge where it shouldn’t.
Who uses it
- Circuit author — edits source and checks the constraint output it produces.
- Auditor — reviews findings, inspects the compiled ACIR, and diffs constraints across versions.
- Researcher — tests under-constrained behaviour with the witness panel and estimates prover cost.
How to open it
- Sidebar → Cryptography → ZK Studio.
- From the Studio action on a ZK analyzer page.
- Direct URL —
/zk-studio.
Working in the studio
An info bar shows the current file’s language (Noir, Circom, Leo, or Cairo) and circuit name, with an Analyze button that runs analysis over the circuit. The left sidebar holds Files, Annotations, and Bookmarks. The centre editor switches between Source, Graph, ACIR, Diff, and Report — the last four appear once analysis has produced them. A resizable bottom panel carries the analysis output: Findings, Witness, Prove, and Complexity. A status bar keeps live counts of constraints and findings.
Limits
- Requires a signed-in account.
- The graph, ACIR, diff, and report views appear only after analysis has produced the corresponding artifact.
- Proving runs in the browser; a very large circuit may need a native toolchain instead.
- Supported languages are Noir, Circom, Leo, and Cairo.
Related pages
- Noir Analyzer — a Noir-only analysis entry point.
- Circom Analyzer — a Circom-only analysis entry point.
- ZK Verifier Audit — audit the on-chain verifier the circuit’s proofs are checked against.