Guilds, direct messages, voice, video and screen sharing — peer to peer and end-to-end encrypted. No account server, no message store, no company.
curl -fsSL https://zahakj.github.io/concord/install.sh | shLatest: v0.59.0 · all downloads (Intel Mac, ARM Linux, native desktop apps) · signed checksums
Built for friend groups and communities. Every message, attachment and call is end-to-end encrypted, and the history lives on the members' devices.
Categories, roles and permissions, forums, polls, events, pins, custom emoji and Markdown.
Calls straight between devices over WebRTC, with push-to-talk and screen sharing. Guests can join a meeting from a browser.
Delivered through an encrypted mailbox when the other person is offline. Strangers arrive as requests.
Your identity is a keypair on your device, backed up by a 24-word phrase. No email, no phone number, no ID check.
Desktop apps for Windows and Linux, Android, and a single-file build that serves the app to your browser on macOS, Linux and Windows. Link devices by QR code.
A bot is a peer with its own identity, scripted over JSON lines. Bring an exported community's history into a guild archive.



Peers connect directly. Whether you need anything else depends on where you both are.
| Where you are | What it takes |
|---|---|
| Same Wi-Fi, or a Tailscale/WireGuard mesh | Nothing. |
| One side can forward a port | One router rule. The invite code carries the address. |
| Neither side can | Someone in the group runs a rendezvous, a small node that introduces peers and relays ciphertext it cannot read. Docker, a VPS or fly.io. |
Can people reach me? in the app's command palette (Ctrl+K) says which row you are in.
An Ed25519 keypair. A peer's network address is derived from its public key, so reaching the address is the identity check.
Each guild is an MLS group (RFC 9420). A signed governance log decides who may change membership; removing someone rekeys the group.
The local network, remembered addresses, invite codes and a distributed hash table, in that order.
Peers reconcile digests and backfill from whoever is online. Nothing is fetched from third parties unless you switch a feature on.
The manual · Design document · Threat model · Privacy policy
git clone https://github.com/ZahakJ/concord && cd concord
make web && ./bin/concord-web
Go and Node 22. Contributing covers the multi-peer development loop.