SignDAO

SignDAO: AI translates sign language for DAO voting with ZK privacy, empowering 70M+ deaf users.

SignDAO

Created At

ETHOnline 2025

Project Description

πŸ–οΈ SignDAO β€” Gesture-Driven DAO Inclusion

AI-powered oracle enabling sign language voting in DAOs β€” secured with Zero-Knowledge proofs for privacy and fairness.

🧠 What This Project Is

SignDAO is a gesture-driven governance system that makes DAO participation accessible to the deaf and hard-of-hearing community. Instead of typing or clicking, users can vote through sign language gestures, which are recognized by an AI model and converted into on-chain votes, protected by Zero-Knowledge proofs to ensure privacy, authenticity, and fairness.

In short: AI recognizes your gesture β†’ ZK proof hides your identity β†’ MetaMask finalizes your on-chain vote.

πŸ’‘ The Problem

DAO governance is still text-based and inaccessible. Over 70 million+ deaf or hard-of-hearing individuals who use sign language are excluded from direct participation in decentralized decision-making because DAO interfaces rely on written or spoken communication.

πŸš€ Our Solution

SignDAO bridges AI gesture recognition and ZK-Secure voting to enable inclusive Web3 governance.

Users connect their MetaMask wallet (Sepolia Testnet).

A local Semaphore identity is generated for privacy.

The user performs a gesture (YES / NO / ABSTAIN).

The gesture is recognized via MediaPipe + FastAPI AI bridge.

The app generates a Groth16 ZK proof verifying:

The user belongs to a valid Semaphore group.

The vote is unique (no double voting).

The DaoActionsZK.sol contract records the verified vote on-chain.

Every transaction is verifiable on Etherscan, but fully anonymous β€” no one knows who voted what.

βš™οΈ Tech Stack Layer Tools / Frameworks πŸ€– AI / Gesture Recognition Python Β· MediaPipe Β· FastAPI ⛓️ Blockchain / ZK Solidity Β· Semaphore Β· Hardhat Β· Sepolia Testnet πŸ’» Frontend Next.js Β· Ethers v6 Β· Tailwind Β· MetaMask signer πŸ” ZK Proofs Groth16 Β· Semaphore circuits 🧱 Infra Routescan + Sourcify verified contracts πŸ” Key Verified Contracts (Sepolia Testnet) Contract Address Description Verification DaoActionsZK.sol 0x7b8363901E588F44cD2904D61Ef5Ab83F59873f2 ZK-secured DAO voting βœ… Sourcify + Routescan SemaphoreVerifier.sol 0x185112CB3C2140858ff77C5B33F11Be8343ae3fc Groth16 proof verifier βœ… Verified DaoActions.sol 0x1Fdf28577154106956cfE5086a7d7B17b6Da4C1b Base DAO logic βœ… Verified GestureNFT.sol 0x8Ec061e0aF8A430eF1056ed377eDeAfB1cFE21cF Gesture reputation NFTs βœ… Verified 🌍 Impact

SignDAO makes Web3 governance inclusive for 1 billion+ underserved people with communication disabilities. Every DAO can integrate gesture-based voting as a module β€” making the blockchain truly democratic and accessible.

β€œYour voice on-chain β€” even if it’s silent.” 🦟

🧩 How It Works (Simplified)

Gesture Capture β€” AI (MediaPipe) detects the user’s sign.

Identity Commitment β€” Semaphore generates a private commitment.

Proof Generation β€” Groth16 circuit ensures the user is real and unique.

Verification β€” On-chain smart contracts verify the proof.

Vote Recorded β€” The DAO updates its proposal state transparently.

All actions use MetaMask signer β€” no backend wallets, ensuring full user control and decentralization.

βœ… Current Features

βœ… Connect / Disconnect Wallet

βœ… Create & Join DAO Groups on-chain

βœ… ZK Gesture Voting (Groth16)

βœ… Verified Contracts (Routescan + Sourcify)

βœ… Inclusive AI Gesture UX

βœ… Real-time vote verification on Sepolia

πŸ•ΉοΈ Demo Flow

Click Connect Wallet (MetaMask)

Click Create Group β†’ Approve tx β†’ Etherscan link shown

Click Join Group β†’ Approve tx β†’ Member appears

Perform a gesture β†’ Proof verified β†’ Vote recorded

Confirm on Sepolia Explorer

🧠 Why It Matters

SignDAO proves that AI + ZK + Web3 can build a world where every voice counts, even when silent. It redefines governance accessibility and strengthens the ethical foundation of decentralized systems.

✨ Future Vision

Multi-chain DAO support (Polygon, Optimism)

Multi-language sign recognition (ASL, ISL, BSL, etc.)

Gesture reputation via NFTs

On-chain grants for accessible Web3 tooling

How it's Made

βš™οΈ How It’s Made

We built SignDAO as a bridge between AI gesture recognition and ZK-secured blockchain governance, combining Python AI inference, Semaphore ZK circuits, and Next.js + MetaMask for an end-to-end decentralized experience.

🧩 Architecture Overview

Frontend (Next.js + Tailwind + Ethers v6)

Built a React-based dApp where users connect their MetaMask wallet (Sepolia).

Integrated Ethers v6 for on-chain reads/writes.

Local identity generation via Semaphore identity commitments using browser-side hashing β€” no backend keys.

Added dynamic UI for group creation, joining, and ZK vote submission, with automatic Etherscan verification links.

AI Gesture Recognition (Python + MediaPipe + FastAPI)

Created a gesture bridge API that runs locally on port 5000.

Used MediaPipe Holistic to track hand landmarks and classify them into gestures (YES / NO / ABSTAIN).

Converted these gesture signals into encoded strings sent to the frontend via HTTP bridge.

This bridge enables the AI to work offline without storing any user data β€” preserving privacy.

ZK Proof Generation (Groth16 + Semaphore Circuits)

Integrated Semaphore circuits for anonymous group voting.

Each gesture triggers a Groth16 proof generated client-side via snarkjs.

The proof verifies that:

The user is a valid group member.

The same user cannot double-vote (nullifier hash).

Proof and signal are bundled and sent to the DaoActionsZK.sol contract.

Smart Contracts (Solidity + Hardhat + Sepolia)

Deployed and verified all contracts on Sepolia (Chain 11155111).

DaoActionsZK.sol: Handles group joins and ZK vote validation.

SemaphoreVerifier.sol: Verifies Groth16 proofs on-chain.

GestureNFT.sol: Mints reputation NFTs for active gesture voters.

Used Routescan + Sourcify for full verification and transparency.

All transactions are executed through the MetaMask signer, ensuring no centralized wallet or backend.

Infra / DevOps

Deployed contracts using Hardhat scripts.

Configured NEXT_PUBLIC_SEPOLIA_RPC for read operations.

Frontend automatically detects the connected network and disables writes if not on Sepolia.

GitHub Actions used for local build checks and linting.

🧠 Hacky / Innovative Parts

ZK-proof pipeline in browser: integrated snarkjs inside the Next.js app, allowing proof generation directly in the client β€” no backend relay server.

Gesture-to-ZK bridge: converted real-time AI gesture recognition into on-chain votes using encoded signal strings.

MetaMask-only flow: removed all private key dependencies and RPC servers β€” every single on-chain write comes from the user’s MetaMask, ensuring decentralization.

Full contract verification: all Solidity contracts are Routescan + Sourcify verified, showing transparent auditability for judges.

Accessible UX: minimal UI built with Tailwind, optimized for one-click demo flow (Connect β†’ Create Group β†’ Join β†’ Vote).

🧠Benefits

Semaphore (by PSE) β€” provided the foundational circuits for anonymous identity and voting.

MediaPipe (by Google) β€” simplified sign gesture recognition without external datasets.

MetaMask β€” handled on-chain writes directly from user wallets.

Routescan + Sourcify β€” ensured all contracts are publicly verified for trust and reproducibility.

🏁 End Result

A fully working dApp where a user can: βœ… Connect wallet βœ… Create or join a Semaphore group βœ… Perform a sign gesture βœ… Generate a local ZK proof βœ… Submit vote on Sepolia β€” all with no backend, no data leaks, and 100% verifiable inclusivity.

background image mobile

Join the mailing list

Get the latest news and updates