Zk-metis-sdk: Zero-Knowledge Made Simple for Metis

Project Name

zk-metis-sdk – Zero-Knowledge Made Simple for Metis

Problem Statement

Privacy-preserving applications are becoming critical in Web3, but working with zero-knowledge proofs remains complex and inaccessible for most developers. Tasks like generating zkSNARK proofs, integrating Solidity verifiers, and deploying to specific L2s such as Metis are highly technical and fragmented. As a result, developers building on Metis lack the tools to easily integrate zero-knowledge capabilities into their applications.

Solution Overview

zk-metis-sdk is a CLI and SDK toolkit that abstracts the full lifecycle of zero-knowledge proofs on the Metis Layer 2 network. It allows developers to compile Circom circuits, perform trusted setup (Groth16), generate proofs, and deploy Solidity verifier contracts directly to Metis. The SDK makes zk integration seamless for dApp developers, promoting privacy, verification, and attestation use cases across Metis-powered ecosystems like SocialFi, DeAI, and identity protocols.

Project Description

zk-metis-sdk is a developer-first, TypeScript-based CLI and SDK built to simplify the adoption of zero-knowledge proofs in the Metis ecosystem. Developers can write Circom circuits for logic such as age verification or anonymous attestation, and the SDK will handle:

  1. Compiling the circuit to .r1cs, .wasm, .zkey, and verifier.sol
  2. Running Groth16 trusted setup using snarkjs
  3. Generating proofs from input.json files
  4. Deploying Solidity verifier contracts directly to Metis (mainnet or testnet)
  5. Verifying zkSNARK proofs on-chain with minimal effort

The SDK is fully compatible with EVM tooling (Hardhat, Foundry, ethers.js) and will also expose a simple JavaScript API for integrating proof generation and on-chain verification in dApps.

This tool lowers the entry barrier for developers who want to build with privacy or verifiable computation in mind—without diving deep into cryptography. We’re excited by its potential to power next-gen apps in SocialFi, AI agents, KYC-less onboarding, and private DAOs on Metis.

Community Engagement Features

To onboard users and gamify zk development, we’ll provide a playground and points-based rewards:

  1. Testable Features/Tasks
  2. Generate and verify a proof using a sample circuit
  3. Deploy a verifier contract on Metis Sepolia
  4. Build a zk-based demo (e.g., private voting, anonymous credential check)
  5. Share a new zk circuit with the community

Points System

+20 points: Complete local proof generation
+50 points: Deploy a verifier to Metis
+30 points: Share a public zk use case on the forum
+100 points: Submit a working dApp built using zk-metis-sdk

Gamification

  1. Leaderboard of zk builders within the community
  2. Exclusive zk contributor NFTs and badges
  3. Feature top users in community showcases
  4. Early contributor rewards and possible grant nomination from Metis

This encourages active learning, open experimentation, and repeat usage among developers while building traction for zk tooling within Metis.

Getting Involved

Interested contributors can:

  1. Join the GitHub repo to contribute to Circom templates, Solidity verifiers, or CLI improvements
  2. Share zk use cases, feedback, or bug reports via our community thread
  3. Use the SDK and post tutorials, demos, or improvements
  4. Collaborate with us to build integrations into Metis-powered platforms (e.g., SocialFi, AI, DePIN)

Whether you’re a Solidity dev, zk researcher, or AI enthusiast, you can help shape the future of privacy-preserving dApps on Metis by building with and contributing to zk-metis-sdk.

10 Likes

Will the SDK support other zk proving systems in the future, such as PlonK or Halo2?

4 Likes

@LazAI_Helper_bot what specific LazAI functionality might help for the above project?

2 Likes

Okay, I’ve reviewed the discussion about the zk-metis-sdk project. Given its goals and the question posed by Han, here’s how LazAI functionality could potentially assist:

  1. LLM Client for Circom Circuit Generation/Optimization:

    • LazAI’s llm_client could be used to create an AI-powered assistant that helps developers write Circom circuits. The LLM could:
      • Suggest optimal circuit designs based on the desired functionality.
      • Identify potential vulnerabilities or inefficiencies in existing circuits.
      • Automatically generate boilerplate code for common ZK patterns.
    • This addresses the “complex and inaccessible” nature of ZK proof development.
  2. Alith Agent for Automated Verifier Deployment and Testing:

    • An Alith agent could be built to automate the deployment and testing of Solidity verifier contracts on Metis.
    • This agent could:
      • Monitor the Metis network for successful deployments.
      • Run automated tests to verify the correctness of the verifier contract.
      • Report any errors or anomalies to the developer.
    • This streamlines the deployment process and ensures the reliability of ZK integrations.
  3. LazChain Integration for Decentralized ZK Proof Verification (Future):

    • In the future, LazAI could leverage LazChain to create a decentralized ZK proof verification system.
    • This would allow verifiers to be deployed and executed in a trustless manner, enhancing the security and transparency of ZK-based applications.
    • This aligns with the broader goal of decentralized AI and Web3 integration.
  4. Model Context Protocol (MCP) for managing Zero Knowledge templates and use cases

    • The MCP could be employed to create a standardized library of zero-knowledge templates and use cases. This would allow developers to easily discover and reuse existing ZK solutions, fostering collaboration and accelerating development.

In response to Han’s question about PlonK/Halo2 support, the Alith agent could be used to benchmark the performance of different proving systems on Metis and recommend the most efficient option for a given application.

2 Likes

Hi Han, thanks for the great question!

At the current stage, zk-metis-sdk is focused on supporting Groth16 via Circom and SnarkJS, since it’s the most widely adopted and production-ready proving system compatible with Solidity verifiers. This ensures that developers can deploy zero-knowledge verification logic on Metis quickly with minimal complexity.

That said, we absolutely plan to extend support to other proving systems such as PlonK and eventually Halo2, especially as Solidity-compatible verifiers become more efficient and tools like zkInterface and Halo2-solidity mature.

Future roadmap goals include:

  • Integrating snarkjs plonk pipelines for projects requiring faster setup times.
  • Exploring native support for Halo2 and pluggable backends like arkworks and halo2lib.
  • Providing a unified interface within the SDK, so developers can choose the proving system based on their use case (e.g., trusted setup vs universal setup, proof size, verifier cost).

We’re also exploring how benchmarking agents (like what LazAI suggested) could help recommend the best proving system dynamically.

Really appreciate the input — this kind of feedback helps guide our roadmap!

1 Like

Thanks for the help.