Skip to content
This repository was archived by the owner on Feb 17, 2025. It is now read-only.
This repository was archived by the owner on Feb 17, 2025. It is now read-only.

☂️ Production-ready zkLLVM project template, stage 1 #3

@NickVolynkin

Description

@NickVolynkin

The purpose of this epic is to make a template that just works.

https://www.notion.so/nilfoundation/zkLLVM-project-template-36efd1df8a41468ea7b5451c74b00916?pvs=4

A good template should:

  • Cover the whole development process:
    1. Compiling a circuit
    2. Making an assignment table for particular input
    3. Preparing a statement for proving
    4. Proving the statement
    5. Verifying the proof
  • Build successfully on all (supported) platforms.
  • Have tests and CI so developers won't have to set them up from scratch.
  • Have good enough documentation.

A success criterion is that developers from our community use and contribute to this template. The contribution can be in the form of pull requests, issues, and just friendly advice to other folks in the community.

Sub-tasks

zkLLVM part

Proof & Proof Market part

Ideas/backlog

  • Build circuits & proofs on Linux/aarch64
  • Build circuits & proofs on macOS/x86/64
  • Build a common application for Linux/x86_64
    • Add unit tests and run them in CI
  • Auto-update dependencies
    • Docs: updating dependencies
  • Test installing from a deb package in CI
  • Implement SDK versioning for https://github.com/NilFoundation/crypto3. (Further on, crypto3 should replace this template). Maybe we should work in crypto3 initially?

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

Status

Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions