# Revolt — Self-Hosted Open Source Chat Platform > A modern, privacy-focused chat application you can self-host as an alternative to Discord, with voice channels, rich messaging, and full data ownership. ## Install Save as a script file and run: # Revolt — Self-Hosted Open Source Chat Platform ## Quick Use ```bash git clone https://github.com/revoltchat/self-hosted cd self-hosted cp .env.example .env docker compose up -d ``` ## Introduction Revolt is an open-source chat platform designed as a privacy-respecting alternative to Discord. It provides text channels, voice chat, direct messaging, and server-based community organization while letting you retain full control over your data by self-hosting the entire stack. ## What Revolt Does - Provides text, voice, and video communication channels organized into servers - Supports rich messaging with embeds, emoji, reactions, and file attachments - Offers role-based permissions and moderation tools for community management - Delivers a responsive web client, desktop app, and mobile clients - Enables full self-hosting with Docker Compose for complete data sovereignty ## Architecture Overview Revolt uses a microservice architecture with a Rust-based backend (Delta) handling the core API, a Bonfire service for WebSocket real-time events, and Autumn for file/media storage. The frontend is built with SolidJS. All services communicate through MongoDB for persistence and Redis for caching and pub/sub messaging. The self-hosted distribution bundles everything into a single Docker Compose configuration. ## Self-Hosting & Configuration - Deploy using the official Docker Compose template with a single `docker compose up -d` - Configure through environment variables in the `.env` file for domain, SMTP, and storage settings - Requires MongoDB and Redis, both included in the Compose stack - Set up a reverse proxy (Nginx or Caddy) with TLS for production deployments - Customize branding, registration policies, and federation settings via configuration files ## Key Features - Full Discord-like experience with servers, channels, roles, and permissions - End-to-end control of user data with no third-party telemetry - Built-in moderation tools including bans, kicks, and message management - Bot API compatible with custom integrations and automation - Lightweight Rust backend with low resource requirements compared to alternatives ## Comparison with Similar Tools - **Discord** — proprietary, no self-hosting, collects extensive user data - **Matrix/Element** — federated protocol with more complexity; Revolt is simpler to deploy - **Rocket.Chat** — enterprise-focused with heavier resource usage - **Mattermost** — targets team collaboration rather than community chat - **Guilded** — proprietary gaming-focused platform with no self-hosting option ## FAQ **Q: What are the minimum hardware requirements for self-hosting Revolt?** A: Revolt runs comfortably on a VPS with 2 GB of RAM and 2 CPU cores for small communities. Larger deployments may need more resources for MongoDB and media storage. **Q: Does Revolt support federation with other instances?** A: Federation is on the roadmap but not yet implemented. Each Revolt instance currently operates independently. **Q: Can I migrate users from Discord to Revolt?** A: There is no built-in migration tool, but community-developed bots and scripts exist to help bridge or import channel history. **Q: Is Revolt fully free and open source?** A: Yes, all Revolt components are released under open-source licenses. The self-hosted stack is free to deploy with no proprietary dependencies. ## Sources - https://github.com/revoltchat/revolt - https://revolt.chat - https://github.com/revoltchat/self-hosted --- Source: https://tokrepo.com/en/workflows/asset-5d08d6c8 Author: Script Depot