MCPcopy Index your code
hub / github.com/Zokrates/ZoKrates

github.com/Zokrates/ZoKrates @0.8.8

Chat with this repo
repository ↗ · DeepWiki ↗ · release 0.8.8 ↗ · + Follow
2,446 symbols 7,625 edges 184 files 63 documented · 3%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

ZoKrates

Join the chat at https://gitter.im/ZoKrates/Lobby CircleCI develop

ZoKrates is a toolbox for zkSNARKs on Ethereum.

This is a proof-of-concept implementation. It has not been tested for production.

Getting Started

Load the ZoKrates Plugin on Remix to write your first SNARK program!

Alternatively, you can install the ZoKrates CLI:

curl -LSfs get.zokrat.es | sh

Have a look at the documentation for more information about using ZoKrates. Get started, then try a tutorial!

Getting Help

If you run into problems, ZoKrates has a Gitter room.

License

ZoKrates is released under the GNU Lesser General Public License v3.

Contributing

We happily welcome contributions. You can either pick an existing issue or reach out on Gitter.

Unless you explicitly state otherwise, any contribution you intentionally submit for inclusion in the work shall be licensed as above, without any additional terms or conditions.

Git Hooks

You can enable zokrates git hooks locally by running:

git config core.hooksPath .githooks

{js,json,ts} formatting

We enforce strict formatting of .{js,json,ts} files in CI. This check is not included in the git hooks. If you modify such a file, you can ensure its formatting is correct by running:

npm i -g prettier
prettier --write "./**/*.{js,ts,json}" --ignore-path .gitignore

Extension points exported contracts — how you extend this code

NodeValue (Interface)
(no doc) [19 implementers]
zokrates_ast/src/untyped/node.rs
Flatten (Interface)
(no doc) [6 implementers]
zokrates_analysis/src/flatten_complex_types.rs
Backend (Interface)
(no doc) [4 implementers]
zokrates_proof_systems/src/lib.rs
Flatten (Interface)
(no doc) [3 implementers]
zokrates_codegen/src/lib.rs
Encode (Interface)
(no doc) [3 implementers]
zokrates_abi/src/lib.rs
Resolver (Interface)
(no doc) [3 implementers]
zokrates_common/src/lib.rs
Cycle (Interface)
(no doc) [2 implementers]
zokrates_field/src/lib.rs
NovaField (Interface)
(no doc) [1 implementers]
zokrates_bellperson/src/nova.rs

Core symbols most depended-on inside this repo

map
called by 638
zokrates_ast/src/typed/types.rs
into_iter
called by 303
zokrates_ast/src/typed/mod.rs
collect
called by 286
zokrates_ast/src/ir/mod.rs
iter
called by 244
zokrates_ast/src/typed/types.rs
span
called by 206
zokrates_ast/src/untyped/node.rs
into_iter
called by 147
zokrates_codegen/src/lib.rs
annotate
called by 147
zokrates_ast/src/zir/uint.rs
into_inner
called by 140
zokrates_ast/src/zir/uint.rs

Shape

Method 1,155
Function 781
Class 327
Enum 114
Interface 69

Languages

Rust99%
TypeScript1%

Modules by API surface

zokrates_ast/src/typed/folder.rs143 symbols
zokrates_ast/src/typed/result_folder.rs137 symbols
zokrates_pest_ast/src/lib.rs130 symbols
zokrates_ast/src/typed/mod.rs127 symbols
zokrates_core/src/semantics.rs107 symbols
zokrates_ast/src/typed/types.rs74 symbols
zokrates_codegen/src/lib.rs73 symbols
zokrates_ast/src/zir/mod.rs73 symbols
zokrates_ast/src/zir/result_folder.rs62 symbols
zokrates_ast/src/zir/folder.rs62 symbols
zokrates_analysis/src/flatten_complex_types.rs57 symbols
zokrates_analysis/src/propagation.rs49 symbols

For agents

$ claude mcp add ZoKrates \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page