Skip to content

v0.0.1

Latest
Compare
Choose a tag to compare
@github-actions github-actions released this 04 Jul 01:34
· 2 commits to main since this release
99f3010

This PoC integrated proof generation into an API server. The completion of this phase initiates the next steps in development. It allows users to generate proofs by simply sending a request to https://maci-coordinator.jetzt/ or a locally spun-up instance. This simplifies the process of MACI proof generation.

PoC Objectives

The main goals of this PoC included:

  1. Generating and Validating Proofs: Utilize go-rapidsnark for the creation of witnesses and proofs, and confirm their correctness.
  2. API Implementation: Develop a basic API endpoint to handle proof generation requests, retrieve the generated proof, and provide prover status with the 10-2-1-2 parameters of MACI V1.
  3. CI/CD Integration: Establish a CI/CD pipeline to provide real-time functionality checks and easy access to the latest container image.

Key Features

Containerization

The implementation of containerization within the Coordinator Service reduces the technical barriers to generating zk-SNARK proofs. Users simply provide the circuit to the service and obtain the proof, bypassing the need for manual file downloading, configuration, OS compatibility checks, and dependency management.

Efficient API

A simple and efficient API has been implemented for managing proof generation requests and retrieving the generated proofs. This approach provides a simplified and efficient user experience.

Continuous Integration and Deployment

The integration of a CI/CD pipeline allows for continuous checks on the system's functionality and facilitates access to the latest container image.

Forward Path

Embracing the Unix philosophy of simplicity and modularity, the design of the Coordinator Service's API will be guided by these principles. The main objective will be to create an API that enables parallel proof generation while offering a simplified configuration for the proving key. This approach ensures that the complexity of generating proofs is abstracted away, making the service more user-friendly and efficient.

Furthermore, to facilitate easy integration and usage in web applications, a Node.js Software Development Kit (SDK) will be developed. This will provide developers with a toolkit to leverage the Coordinator Service's functionality, streamlining the process of implementing and utilizing MACI within their applications. This SDK aims to make the power of MACI more accessible and easier to wield, opening up opportunities for broader use and application.


Here's What Changed

  • Initialize project using notsatan/go-template β€” @gurrpi (#3)

πŸš€ Updates

  • Generate proof of TallyVotes circuit β€” @gurrpi (#15)
  • Implement updated API design and revise demo HTML β€” @gurrpi (#14)
  • Add API endpoints β€” @gurrpi (#7)

πŸ“¦ Dependencies

  • Bump github.com/stretchr/testify from 1.8.3 to 1.8.4 β€” @dependabot (#8)

πŸ€– CI/CD and Pipelines

  • Add nightly run β€” @gurrpi (#16)
  • Add GitHub Actions workflow for building and deploying Docker images with flyctl β€” @gurrpi (#12)
  • Build and publish Docker image to GHCR β€” @gurrpi (#11)
  • Add pr-labeler β€” @gurrpi (#5)

Current Release: 0.0.1