DEV Community

Ryan
Ryan

Posted on

I'm building a censorship-resistant social network in Rust — and I need your help

Most social platforms have a kill switch. Someone, somewhere, can throttle your reach, suspend your account, or just turn the whole thing off. I wanted to build something where that's architecturally impossible — not just policy-promised, but structurally removed.

That's Agora: an open-source, distributed social network with no central servers, no moderators, and no corporate gatekeepers. Identities are cryptographic keypairs. Posts travel over a DHT-based overlay network. Every participant runs the full stack themselves.

Repo: https://github.com/agoratalk/agora

How it works

The stack has three main pieces:

  • A daemon/ written in Rust — handles identity, the DHT, peer discovery, messaging, and posts.
  • An electron/ desktop client that talks to a local daemon.
  • A web/ UI server for browser-based access to your local daemon.

Your identity is a keypair generated on first run. Your handle is derived from your public key. No registration, no email, no server to phone home to.

Try it in two commands

git clone https://github.com/agoratalk/agora.git agora
cd agora && docker compose -f docker-compose.single.yml up --build
Enter fullscreen mode Exit fullscreen mode

The web UI comes up at localhost:8080. There's also a ten-peer local simulation mode for development.

What's working, what isn't

This is an alpha. Here's an honest picture:

Working In progress / rough
Following, blocking, shareable lists IP hiding via Tor/I2P/WireGuard — implemented but not hardened
Topic channels, group chats Proof-of-work spam resistance
Encrypted DMs with forward secrecy Mnemonic identity backup
Local feed algorithm (on-device, no black box) Embedded content previews
Multilanguage UI A lot of bugs

The IP-hiding layer is the biggest caveat. Tor mode works via an embedded arti client, but there are edge cases in the DHT gossip layer where your real IP can leak — particularly around bootstrap connections. Don't rely on it for strong anonymity yet.

Where I most need help

Privacy and networking work is the highest priority. If you have experience with any of the following, I'd love a PR or even just a conversation in the issues:

  • Tor, I2P, or mixnet internals
  • NAT traversal and peer discovery at scale
  • DHT design and gossip protocols
  • Rust async networking

But honestly, every area needs work: the Electron/web frontends, spam resistance, packaging, translations, and adversarial testing. If something catches your eye, that's probably a good place to start.

A note on pace

This is a side project. Progress is slow and bursty. That's exactly why outside contributions matter — every patch moves things forward faster than I can alone.

If this sounds interesting, take a look at the repo, file an issue, or send a PR. The license is WTFPL — do whatever you want with it.

Top comments (0)