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.
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
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)