Gryt - Self-Hosted WebRTC Voice Chat
Gryt is an open-source, self-hosted Discord alternative with crystal-clear voice, screen sharing, and text chat powered by WebRTC.
TL;DR
TL;DR: Gryt is a self-hosted, open-source voice chat platform that gives you Discord-like functionality with full data ownership using WebRTC technology.
Source and Accuracy Notes
- Project page: gryt.chat
- Source repository: github.com/Gryt-chat/gryt
- License: AGPL-3.0 (verified from README badge and LICENSE file)
- HN launch thread: news.ycombinator.com/item?id=47149736
- Documentation: docs.gryt.chat
- Latest version: v1.2.12 (released 2026-05-28)
- Source last checked: 2026-06-15
What Is Gryt?
Gryt is a self-hosted, open-source voice chat platform built on WebRTC. It’s designed as a privacy-focused alternative to Discord, giving teams and communities full control over their communication infrastructure.
From the official README:
Open-source WebRTC voice chat platform
The project is currently in early development but already offers core features for voice communication, screen sharing, and text chat.
Core Features
- Crystal-clear voice chat powered by WebRTC with Opus codec
- Screen sharing with audio capture
- Text chat with Markdown, mentions, and file sharing
- Global push-to-talk with configurable keybinds
- RNNoise-based noise suppression for cleaner audio
- LAN server discovery via mDNS
- Auto-updates for desktop clients
Setup Workflow
Step 1: Choose Your Deployment Method
Gryt offers multiple deployment options:
- Docker Compose (recommended for production)
- Windows standalone (no Docker required)
- Desktop apps (Linux, Windows, macOS)
- Web client at app.gryt.chat (instant, no setup)
Step 2: Docker Compose Setup (Recommended)
The quickest way to self-host Gryt is with Docker Compose. Two files, one command:
# Create a directory for Gryt
mkdir gryt && cd gryt
# Download the production compose file
curl -Lo docker-compose.yml https://raw.githubusercontent.com/Gryt-chat/gryt/main/ops/deploy/compose/prod.yml
# Download the environment template
curl -Lo .env https://raw.githubusercontent.com/Gryt-chat/gryt/main/ops/deploy/compose/.env.example
# Start the services
docker compose up -d
To enable the web client, use the web profile:
docker compose --profile web up -d
Step 3: Windows Standalone (No Docker)
If you’re on Windows and don’t want to use Docker:
- Install Node.js 20+
- Download the latest release from GitHub Releases
- Extract and run
See the full Windows deployment guide for firewall setup and remote access configuration.
Step 4: Desktop Client
Download the desktop app for your platform:
| Platform | Download | |----------|----------| | Linux (AppImage/deb) | GitHub Releases | | Linux (Snap) | Snap Store | | Linux (Arch) | AUR: gryt-chat-bin | | Windows | GitHub Releases | | macOS | GitHub Releases |
Deeper Analysis
Technology Stack
Gryt is built on proven open-source technologies:
- Pion WebRTC - Pure Go WebRTC stack for the SFU (Selective Forwarding Unit)
- RNNoise - Neural network noise suppression compiled to WASM
- Radix UI - Accessible, unstyled component primitives
- Socket.IO - Real-time signaling between client and server
- Electron - Desktop app shell with native OS integration
Architecture
The monorepo includes:
- Desktop client (Electron-based)
- Signaling server
- SFU (Selective Forwarding Unit) for efficient media routing
- Keycloak integration for authentication
Current Limitations
The README includes this caution:
Early Development Stage - This project is experimental and under active development. Expect breaking changes.
With 36 GitHub stars and active development since February 2026, Gryt is promising but not yet production-hardened. The embedded server is ideal for LAN parties and local teams, but internet-facing deployments should follow the Docker Compose guide for TLS setup and monitoring.
Practical Evaluation Checklist
Before deploying Gryt, consider:
- [ ] Use case fit: LAN party, small team, or community? Gryt excels at small-to-medium deployments
- [ ] Technical comfort: Docker knowledge required for production setup
- [ ] Authentication: Keycloak integration available but may need configuration
- [ ] TLS/HTTPS: Required for internet-facing deployments (documented in Docker guide)
- [ ] Backup strategy: Self-hosted means you’re responsible for data backups
- [ ] Monitoring: Check the deployment docs for monitoring setup
- [ ] Mobile support: Currently desktop and web only (no native mobile apps yet)
Security Notes
- Self-hosted = your responsibility: You control the infrastructure, security, and data
- WebRTC encryption: All media streams are encrypted end-to-end
- Keycloak auth: Enterprise-grade identity management available
- AGPL-3.0 license: Modifications to the server must be shared if you distribute the service
- Early development: Expect security updates as the project matures
For production deployments:
- Always use HTTPS/TLS
- Configure proper firewall rules
- Set up monitoring and alerts
- Regular security updates
FAQ
Q: Is Gryt a complete Discord replacement? A: Not yet. Gryt offers core voice, text, and screen sharing features, but lacks Discord’s extensive bot ecosystem, server discovery, and mobile apps. It’s ideal for teams who want self-hosted voice chat without Discord’s feature bloat.
Q: Can I use Gryt without self-hosting? A: Yes. The web client at app.gryt.chat lets you try Gryt instantly with no setup. For regular use, self-hosting gives you full control.
Q: What’s the difference between Gryt and Jitsi? A: Jitsi focuses on video conferencing with large meetings. Gryt emphasizes persistent voice channels (like Discord) with always-on voice chat, screen sharing, and text chat for ongoing collaboration.
Q: Does Gryt support mobile devices? A: Currently, Gryt offers desktop apps (Linux, Windows, macOS) and a web client. Native mobile apps are not yet available, but the web client works on mobile browsers.
Q: How many users can a Gryt server support? A: The documentation doesn’t specify hard limits. The WebRTC SFU architecture scales well, but actual capacity depends on your server resources and network. The project is early-stage, so large-scale deployment guidance is limited.
Q: Is Gryt suitable for production use? A: The project is in early development and warns of breaking changes. It’s suitable for small teams and technical users comfortable with self-hosting experimental software. Enterprise deployments should wait for more maturity.
Conclusion
Gryt fills a specific niche: self-hosted, Discord-like voice chat for teams and communities who want data ownership without relying on third-party services. The WebRTC foundation ensures low-latency, encrypted communication, and the Docker Compose setup makes deployment straightforward.
At 36 stars and in active development, Gryt is promising but experimental. If you need a production-hardened solution today, mature alternatives like Mumble or Jitsi might be better fits. But if you’re comfortable with early-stage software and want a modern, self-hosted voice chat platform, Gryt is worth watching.
Best for:
- Small teams wanting self-hosted voice chat
- LAN parties and gaming groups
- Privacy-conscious communities
- Developers who want to contribute to an open-source project
Not yet for:
- Large enterprises needing SLA guarantees
- Users who need mobile apps
- Those wanting a complete Discord replacement with bots and integrations
Try it at app.gryt.chat or self-host with Docker Compose in under 5 minutes.
Related Posts
dev-tools
AgentMesh – Define AI Agent Teams in YAML
Define multi-agent AI workflows in YAML and run them locally with one command. AgentMesh brings Docker Compose patterns to AI agent orchestration.
5/28/2026
ai-setup
IonRouter – Fast Low-Cost AI Inference API
IonRouter is a YC W26 inference API routing open-source and fine-tuned models via an OpenAI-compatible endpoint, built on a C++ runtime optimized for GH200.
5/28/2026
dev-tools
Cicada – FOSS CI/CD That Replaces YAML With a Real Language
Cicada replaces GitHub Actions and GitLab CI YAML configs with a custom functional DSL, letting you write pipelines using variables, functions, and shell.
5/29/2026