Stoat
Open-source, self-hosted chat and community platform (formerly Revolt)

Stoat is an open-source chat and community platform (formerly known as Revolt) that provides text channels, direct messages, role/permission controls, moderation tools, and rich media support. The project is implemented as a modular Rust backend with companion services and a web-native client, designed for self-hosting and community-focused deployments.
Key Features
- Modular Rust-based backend split into multiple crates (REST API, WebSocket events, file server, proxy, daemons) for separation of responsibilities and scalability.
- Deployable with Docker Compose and Nix; includes Dockerfile and compose examples for local and production deployment environments.
- Integrates common infra components documented in the repo: MongoDB for primary storage, Redis for transient/cache needs, MinIO (S3-compatible) for file storage, and RabbitMQ for messaging/queues.
- Provides WebSocket and REST APIs, presence and event servers, a file server with S3-compatible storage handling, and Tenor proxy support for GIFs.
- Web and desktop clients are supported; the repository and docs reference a web client workflow (build with Node/Yarn tooling) and platform downloads.
- Fine-grained permissions, moderation and bot support aimed at community management; emphasis on privacy and GDPR-aligned practices.
Use Cases
- Host community servers for gaming, hobby, or interest groups requiring channel-based chat and moderation tools.
- Private team or organization chat deployments with self-hosted infrastructure and custom integrations.
- Custom deployments that need S3-compatible file storage, event-driven messaging, and WebSocket-based real-time updates.
Limitations and Considerations
- Real-time voice/video features have historically been limited or under active development; audio/voice support may be experimental or staged and can require additional infrastructure (example configs reference LiveKit).
- Federation with external networks is not implemented by default and has been indicated as low priority; cross-server federation is not a built-in feature.
- Self-hosting requires multiple supporting services (MongoDB, Redis, MinIO, RabbitMQ) and moderate operational knowledge; resource and orchestration planning is necessary for larger deployments.
Stoat is a production-focused, open-source alternative to proprietary chat platforms, built primarily in Rust with container-first deployment patterns. It targets communities and teams that want control over their data and infrastructure while providing modern chat features.
Categories:
Tags:
Tech Stack:
Similar Services

Rocket.Chat
Self-hosted secure team chat with voice, video, and omnichannel
Rocket.Chat is an open-source communications platform for secure team messaging, channels, DMs, voice/video, integrations, and customer omnichannel support.


Novu
Open-source notifications infrastructure for inbox and multi-channel delivery
Novu is an open-source notifications platform with a unified API, workflow orchestration, and embeddable in-app inbox for email, SMS, push, and chat.

Mattermost
Secure, self-hosted team collaboration and messaging platform.
Open-source, self-hosted messaging platform for secure team collaboration with real-time chat, audio calls, screen sharing, and integrations.


ntfy
HTTP-based pub-sub push notification service via PUT/POST
ntfy is a lightweight HTTP pub-sub service to send push notifications to phones, desktops, and browsers via PUT/POST or a REST API.

Chatwoot
Open-source omnichannel customer support and live chat platform
Chatwoot is an open-source customer support platform with a shared inbox for live chat, email, and messaging channels, plus automation, reporting, and a help center.

Zulip
Organized team chat with topic-based threading
Open-source team chat server with topic-based threading for focused, asynchronous, and real-time communication in distributed teams.
Redis
MinIO (S3-compatible)
Docker
Rust
Nix
Node.js