Skip to content

Netwalls/priv_caster

Repository files navigation

PrivCaster πŸ•΅οΈβ€β™‚οΈπŸ”’

Privacy-First Decentralized Social Network on Aleo

Aleo Leo License: MIT Aleo Testnet Discord

PrivCaster is a truly private decentralized social protocol built natively on Aleo using the Leo programming language and Aleo's zero-knowledge record model.

It enables users to:

  • Post content (casts) without exposing identity, metadata, or connections
  • Build hidden social graphs (follows, groups, interactions)
  • Communicate privately via encrypted DMs and gated communities
  • Receive private tips and execute bulk payouts to supporters or community members β€” all verifiably private

πŸ“‘ Deployed Contract

privcaster_v2.aleo is now live on Aleo Testnet!

Every action is protected by zero-knowledge proofs: validity is proven without revealing underlying data. This creates a safe space for authentic expression, free from doxxing, harassment, bullying, surveillance, or chain analysis β€” especially critical in high-risk regions and for sensitive topics.

🌟 Why PrivCaster Exists

On public social platforms and transparent blockchains, expressing opinions or sharing personal content carries real risks:

  • Doxxing and real-world harassment
  • Targeted bullying or "dragging" for unpopular views
  • Self-censorship due to fear of exposure
  • Traceable financial support (tips, rewards) linking wallets to identities
  • Metadata leaks revealing networks, interests, and behavior patterns

PrivCaster eliminates these threats by making privacy the default and effortless:

  • No public social graph
  • No visible transaction history
  • No metadata linkage between actions
  • Verifiable rules (anti-spam, eligibility) without disclosure

This is only practically achievable with Aleo's programmable zero-knowledge execution environment β€” where private state transitions and ZK proofs are first-class citizens.

🎯 Core Use Cases

  1. Free Expression Without Fear
    Creators, activists, journalists, and everyday users post bold opinions or personal stories anonymously.

  2. Private Creator Economy
    Supporters tip creators or communities reward members without exposing wallets or relationships.

  3. Safe Communities
    Private groups for mental health support, whistleblowers, political organizing, or niche interests β€” membership and activity fully hidden.

  4. Bulk Private Distributions
    DAOs, creators, or organizers distribute rewards (airdrops, payroll-like payouts, grants) to dozens or hundreds of recipients verifiably, without revealing lists, amounts, or criteria details.

✨ Development Roadmap (10 Waves)

Wave 1 βœ… (Done / ~80% UI + private posting)

  • Core frontend (wallet connect, profile view, post composer)
  • Private post creation: Leo contract + ZK proof for valid posting (anti-spam/rate limit), encrypted content, hidden metadata
  • Basic private feed viewer (using view keys to decrypt own posts)
  • Testnet deployment + simple demo flow

Wave 2 🚧 (In Progress – personal interactions)

  • Private DMs: End-to-end encrypted messaging with ZK proof of sender eligibility (e.g., mutual follow or group membership)
  • Friend requests: ZK-based private follow requests/approvals (prove request without exposing graph)
  • Private tipping: Single private sends (lock ALEO/stablecoin β†’ prove balance β†’ transfer privately to recipient)
  • UI polish: Inbox, request notifications (private push via view keys), simple tip button on profiles/posts

Wave 3 πŸ“‹ (Planned – communities + monetization start)

  • Private groups: ZK-gated creation/joining (prove criteria like "approved by admin" or "hold reputation token" without revealing members)
  • Strict privacy in groups: Hidden membership lists, private group posts (only visible to members via shared view keys), anti-harassment tools (e.g., private reporting with ZK proof)
  • Bulk payments foundation: Leo contract for private pool locking + basic batch distribution proof (e.g., prove total sent matches locked amount for small batches)
  • UI: Group creation/join flow, group feed, bulk payout starter interface (select recipients manually first)

Wave 4 πŸ“‹ (Planned – reputation & anti-sybil layer)

  • Private reputation system: Homomorphic counters for likes/reactions/follows (accumulate score privately)
  • ZK proofs for reputation: e.g., "prove >50 engagements" to unlock features without showing exact count
  • Onboarding fee implementation: ~$5 private payment to register β†’ reduces bots/sybil attacks
  • UI: Reputation badge display (selective), fee payment flow during signup

Wave 5 πŸ“‹ (Planned – advanced bulk payouts - core differentiator)

  • Full private bulk payouts: Lock funds β†’ define private criteria (e.g., "active in last 30d", "in group X", "reputation > threshold") β†’ ZK-proof eligibility + fair distribution β†’ batch execute (up to 50–100 recipients)
  • Claim mechanism: Recipients prove eligibility privately to claim their share
  • Refund/dispute logic: Private arbitration stub
  • UI: Creator dashboard for payout campaigns (select criteria, preview, execute)

Wave 6 πŸ“‹ (Planned – selective disclosure & compliance hooks)

  • Advanced selective disclosure: Users prove attributes (e.g., "in group Y", "reputation tier") for access gating without full reveal
  • View key sharing: Easy UI to grant temporary access (e.g., share a post/DM with someone)
  • Basic compliance features: Optional view key escrow for audits (tax/reporting) while keeping default private
  • UI: Proof generator UI, share modal

Wave 7 πŸ“‹ (Planned – feed & discovery improvements)

  • Private personalized feeds: Aggregate follows + groups privately (ZK membership proofs for inclusion)
  • Basic search/discovery: ZK-secure keyword search over encrypted posts (if feasible) or tag-based private channels
  • Notifications: Private, encrypted push for DMs, mentions, tips received
  • Mobile responsiveness + basic PWA support

Wave 8 πŸ“‹ (Planned – monetization & economy polish)

  • Protocol fees: 0.5% auto-collected on tips/bulk payouts β†’ private treasury record
  • Premium features stub: e.g., advanced ZK proofs or custom group themes (subscription via private recurring payment)
  • Analytics dashboard (private views): Creator sees own engagement/tip stats without leaks
  • UI: Earnings overview, fee transparency notice

Wave 9 πŸ“‹ (Planned – security, optimization & testing)

  • Circuit optimizations: Reduce proof generation time (<5–10s target)
  • End-to-end testing: Multi-user simulations (private interactions, payouts)
  • Basic security review: Fuzz inputs, check common ZK pitfalls
  • Beta invite system: Onboarding with referral codes (private)
  • Prepare mainnet migration docs

Wave 10 πŸ“‹ (Planned – mainnet launch & polish)

  • Mainnet deployment of core contracts + frontend
  • Security audit coordination (or self-audit report)
  • User onboarding campaign: Landing page, demo videos, community beta invites
  • Final UX refinements: Error handling, loading states, dark mode
  • Post-launch metrics tracking (private analytics)

πŸ›  Technology Stack

Layer Technology Purpose
Blockchain Aleo Private-by-default records & transitions
Smart Contracts Leo ZK circuits for proofs & private logic
Frontend React / Vite / Tailwind Intuitive UI with automatic proof generation
Wallet Integration Aleo Wallet Adapter Seamless connect & sign
Privacy Primitives ZK proofs, view keys, homomorphic counters Hide graph, content, payments, metadata

πŸš€ Quick Start (Local Development)

Prerequisites

  • Node.js β‰₯ 18
  • Aleo SDK & Leo CLI installed
  • Rust (required by Leo)
  • Aleo Wallet (Leo Wallet browser extension recommended)

Clone & Setup

git clone https://github.com/YOUR_USERNAME/privcaster.git
cd priv_cast
npm install

View Deployed Contract

The contract is already deployed to Aleo testnet as privcaster_v1.aleo

# View contract code
cd contracts/privcaster
cat src/main.leo

# Build locally (optional)
leo build

Launch Frontend

# From project root
npm run dev

β†’ Open http://localhost:5173

Try It Out

  1. Connect Wallet: Click "Connect Wallet" and select your Aleo wallet
  2. Get Testnet Credits: Visit Aleo Faucet if needed
  3. Create Group: Go to Groups page β†’ Create your first private group
  4. Post Privately: Write and post with privacy features
  5. Tip Posts: Click tip button on any post

πŸ“Š Live Demo & Testnet

🀝 Contributing We welcome contributions β€” especially from the Aleo community, ZK developers, UI/UX designers, and privacy advocates.

Fork the repository Create your feature branch (git checkout -b feat/private-bulk-payouts) Commit your changes (git commit -m 'Add ZK bulk payout circuit') Push to the branch (git push origin feat/private-bulk-payouts) Open a Pull Request

Please read CONTRIBUTING.md for full guidelines, code style, and issue templates. πŸ“œ License MIT Β© 2026 PrivCaster Team ❀️ Built For A more private, authentic internet β€” where people can speak freely, support each other safely, and build communities without fear. If you believe privacy should be the default in social networking, star ⭐ this repo! Made with ❀️ during the Aleo Privacy Buildathon. text### Tips for Next Steps

  • Replace placeholders (your GitHub username, demo URL, Discord link, etc.)
  • Add real screenshots to the repo (e.g. in /public/screenshots/) and update image paths
  • Create empty placeholder files: DEVELOPMENT.md, CONTRIBUTING.md
  • Add a LICENSE file with MIT text
  • When you have a live demo, update the badge and link

This version is clean, focused, detailed, and optimized to impress buildathon judges by emphasizing Aleo-native privacy innovation. Let me know if you want sections expanded (e.g. more technical depth on ZK circuits) or a matching DEVELOPMENT.md file!1.4sFast

privcaster_v1.aleo is now live on Aleo testnet!

Transaction: https://explorer.aleo.org/transaction/at1tqar505gk8x7wrsuyx4pc7cdmhyfdh7knlvtg7ktq08wur4c0gxq6ghvky

πŸ“‘ Broadcasting deployment for privcaster_v2.aleo... πŸ’°Your current public balance is 22.65341 credits.

βœ” This transaction will cost you 7.359829 credits. Do you want to proceed? Β· yes

βœ‰οΈ Broadcasted transaction with:

  • transaction ID: 'at1z6sgscd2n2nkkfstffww9mhf656t9hlrlpa5fh9985mxdtd59syqufjqk8'
  • fee ID: 'au1gvmacpw668mr894yxp0qx7e9njwgz7mzt433k56pz3xmq9f0jqpqg0z54x'
  • fee transaction ID: 'at1gl9kq5vl3mg3nqcu8kasn4kv748kt8trkr8v9pcv4lkhhmqjac8sl42xjt' (use this to check for rejected transactions)

πŸ”„ Searching up to 12 blocks to confirm transaction (this may take several seconds)... Explored 1 blocks. Transaction accepted. βœ… Deployment confirmed!

About

Private social media

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •