Ping lets you speak without being seen. A decentralized signalling platform where users can broadcast verifiable messages anonymously using zero-knowledge proofs.
# π΅οΈββοΈ Ping
> **Ping lets you speak without being seen.** > A decentralized signalling platform where users can broadcast **verifiable messages anonymously** using **zero-knowledge proofs** on **Mantle Sepolia**.
---
## [Live Link](https://ping-nextjs.vercel.app/)## π TL;DR
Ping is a **privacy-first social signalling protocol** where verified individuals can send **trustworthy signals like feedbacks/votes without revealing their identity**.
It uses **Semaphore** for anonymous group proofs, **Mantle Sepolia** for censorship-resistant verification, and **Buidl Guidl** tooling for seamless development and smart contract deployment.
> π‘ Think βverified whispersβ β truthful, anonymous, and onchain.
---
## π― Problem
Online spaces force a binary choice:
- **Anonymous = untrustworthy**
- **Verified = exposed**
Communities, DAOs, and whistleblowers need a way to **prove they belong** without revealing **who they are**.
Traditional platforms rely on centralized trust β admins, servers, or moderators β introducing bias, risk, and censorship.
---
## π‘ Solution β *Ping*
Ping enables **verifiable anonymity** through zero-knowledge proofs.
It allows anyone to post a **signal** (vote, opinion, alert) verified by math β not by trust.
- π§ **Zero-Knowledge Proofs** β users prove theyβre group members without revealing their identity
- π **Onchain Verification** β proofs verified by smart contracts on **Mantle Sepolia**
- π **Anonymous but Accountable** β one signal per identity, no duplicates or Sybil attacks
---
## π§© How It Works
1. **Create a Ping Identity** - User generates a **Semaphore identity** (private key never leaves device).
2. **Join a Group** - Group = community, company, or verified list.
- Each group has an onchain group ID.
3. **Send a Ping** - User creates a **ZK proof** showing:
- Membership in group β
- Unique signal nullifier π
- Proof sent to the Ping smart contract.
4. **Verify & Broadcast** - Smart contract verifies the proof.
- Emits an event on Mantle Sepolia β Ping frontend fetches it β signal displayed anonymously.
---
## ποΈ Architecture
| Layer | Technology |
|-------|-------------|
| ZK Layer | Semaphore Protocol |
| Smart Contract | Solidity + Foundry + Buidl Guidl Stack |
| Blockchain | Mantle Sepolia |
| Frontend | Next.js + TailwindCSS + Viem |
| Deployment | Vercel (Frontend) + Mantle Explorer (Contracts) |
---
## βοΈ Tech Stack
| Category | Tools / Frameworks |
|-----------|--------------------|
| π§± Smart Contracts | Solidity, Hardhat |
| π Zero-Knowledge | Semaphore, SnarkJS |
| π Blockchain | Mantle Sepolia |
| π» Frontend | Next.js, TailwindCSS |
| π§° Tooling | Buidl Guidl, Viem, Ethers.js |
| βοΈ Hosting | Vercel |
---
## π§ Example Use Cases- π΅οΈ **Whistleblower Portal:** prove affiliation, stay safe
- π¬ **Private Group Chats:** anonymous verified discussions
- π **Signal Feed:** send onchain proofed messages for coordination
## π Future Roadmap
- π§© **Self Protocol Integration** β nationality/age/gender based group entry
- π¬ **Onchain Group Messaging** β zk-based chatrooms
- πͺ **Reputation Points** β build trust without identity
---
## π‘οΈ Why Mantle Network?
We chose **Mantle Network** because it aligns with Whispβs mission β
> βPrivacy, freedom, and trustless communication.β
- β‘ Gas-efficient zk verification
- π Native privacy tooling
- π Decentralized communication layer
- π¬ Vibrant developer community
---
## Contracts Deployed and Verified on Mantle Sepolia
[Semaphore](https://explorer.sepolia.mantle.xyz/address/0x501F1ABBFae1f7382cfA54871685eB1E8A845fb6)
[SemaphoreVerifier](https://explorer.sepolia.mantle.xyz/address/0x4309Eb90A37cfD0ecE450305B24a2DE68b73f312)
[PoseidonT3](https://explorer.sepolia.mantle.xyz/address/0x3822F3A99940D9A0401c093D734a149Cf8b109a9)
[Ping](https://explorer.sepolia.mantle.xyz/address/0x6c0f0B87cD3178B4b21fE77775e628daB94eD15D)
[Transactions on Mantle Sepolia](https://explorer.sepolia.mantle.xyz/address/0x6c0f0B87cD3178B4b21fE77775e628daB94eD15D)
## π₯ Team
**Built by:**
- π§βπ» **Akhil** β Full Stack + ZK Dev