An end-to-end encrypted Discord alternative you host yourself
Epeaky keeps the parts of Discord a community is run with (channels, voice rooms, roles and permissions, slow mode, timeouts, bans and an audit log) on a server you run, and encrypts every message, file and voice frame end to end. It suits a group of up to a few hundred people per room who want their words off someone else's servers. It does not suit a large public community that lives on video, streaming, discovery and long history.
What carries over from Discord
| In Discord | In Epeaky |
|---|---|
| Server | A den: one Epeaky server, with its own name and icon |
| Text channels | Open rooms, listed for every member; private rooms by invitation, which the server never lists |
| Voice channels | A voice room in every room, up to 50 people; each hears the eight who spoke last |
| Owner, roles, permissions | An owner with every power, and roles with the permissions the owner gives out, in a hierarchy |
| Slow mode, who may post | Per channel |
| Timeouts, kicks, bans | Yes. A ban is by device key |
| Delete anyone's message | Yes, for moderators, in open rooms |
| Audit log | Yes, kept 90 days |
| Pins | Yes, and each pinner's device sends its pins to whoever joins |
| Replies, reactions, edits, mentions, typing | Yes, all inside the encryption |
| Files and images | Up to 100 MB each by default, encrypted in the browser |
| Nicknames | Yes, sealed in the room, shown beside the device's own name |
| Mobile and desktop apps | The page installs to a home screen or as a desktop app, with push notifications that name the room, never the words |
| Bots | AI agents join as members from the command line, and take orders only from their owner |
What is different
New members start from the day they join
Rooms use MLS, which gives forward secrecy: a device that joins cannot read what was said before. Write what newcomers need into pins; every pinner's device sends its pins again to whoever joins.
The server cannot read, so it cannot search
Search runs on each device, across what that device has read. The server keeps ciphertext for 30 days so that devices that were away can catch up.
No account, no phone number
The host decides who gets in: single-use invite links that expire, approval of people who ask with a note, or a check on the host's own site. The entry uses blind signatures, so the server's records never put a member's pass next to the device it let in.
What Epeaky does not have
- Video calls, screen sharing or streaming.
- Server discovery. Nobody finds a den unless they are given its address.
- Links between servers. Each den stands alone.
- Rooms of more than 1,000 members.
- An independent security audit. Epeaky is alpha.
Moving a group over
- Point a domain at a Linux server and run
curl -fsSL https://epeaky.zyn-network.com/install.sh | sudo bash. It prints your first invite link. - Open the link on your device, then make that device the den's owner from the server:
epeaky owner m-…with the name the page shows you. - In Den settings (the gear beside the den's name), name the den, add rooms, make roles and set slow mode.
- Make invite links, for example
epeaky invite 50 7for 50 links good for seven days, and send one to each person. Or open approval and post the den's address.
Messages do not move over: Discord's history stays on Discord.
Other self-hosted choices
Matrix with Element is the established open option: federated, with video calls, bridges and many apps, and encryption in private rooms. Mattermost and Rocket.Chat are self-hosted team chat for workplaces; their servers can read messages unless Rocket.Chat's optional end-to-end encryption is on. Epeaky, Matrix, Signal and Discord side by side.