Skip to content
c17 .ioJoin list

Stacks / Support

Easy

Stoat + Element

Self-host Discord-shaped chat. Stoat is Revolt under its 2025 name; Element is the Matrix client on a homeserver you run.

The problem

Discord is free until the server, the boosts, and the vendor lock are the product. Stoat (formerly Revolt) is the self-hosted Discord-like stack. Element plus a Matrix homeserver is the federated path. Both are still maintained.

Replaces

Discord

Replace Discord

Estimated SaaS saved

$1,200

per year, small team, before lock-in

Start on Railway

Sponsor this stack Tip jar

Placeholder: Stoat from stoatchat/self-hosted (Compose: API, events, files, web) or Element + a Matrix homeserver. Volumes for files and the DB. Not a single-container toy.

The stack

Cost table

You stop payingTypical / yearSelf-host instead
Discord Nitro / boosts / extra seats$1,200Stoat or Element + a homeserver

Agent setup prompt

Replace Discord with self-hosted chat.

Pick Stoat (formerly Revolt; https://github.com/stoatchat/self-hosted) for a Discord-shaped server, or Element on a Matrix homeserver for federation.
- Persist Mongo/Redis/files (Stoat) or the homeserver DB (Matrix). Bind HTTP to 0.0.0.0:$PORT.
- Turn off public registration after the first admin. Document how to invite the existing Discord members.
- Write AGENT_PROMPT.md. Do not invent a native Discord import if the project does not ship one.

Also as markdown: /stacks/stoat-chat.md

FAQ

Is Revolt dead?
No. The project rebranded to Stoat in 2025. Same chat, new name. The self-host repo is stoatchat/self-hosted.
Why Element then?
If you want federation and existing Matrix users, Element is the client and you run a homeserver. Stoat is the Discord lookalike. Pick one.