Open-source WebRTC voice chat platform
Try Gryt instantly at app.gryt.chat — no download or setup required.
Caution
Early Development Stage — This project is experimental and under active development. Expect breaking changes.
- Crystal-clear voice chat powered by WebRTC with Opus codec
- Screen sharing with audio capture
- Text chat with Markdown, mentions, and file sharing
- Self-hostable with Docker Compose
- LAN server discovery via mDNS
- Global push-to-talk with configurable keybinds
- RNNoise-based noise suppression
- Auto-updates
| Platform | Link |
|---|---|
| Web | app.gryt.chat |
| Linux (AppImage / deb) | GitHub Releases |
| Linux (Snap) | Snap Store |
| Linux (Arch) | AUR: gryt-chat-bin | | Windows | GitHub Releases | | macOS | GitHub Releases |
See the Quick Start guide to self-host Gryt with Docker Compose — two files, one command, no cloning required.
git clone --recurse-submodules https://github.com/Gryt-chat/gryt.git
cd gryt
./ops/start_dev.shOpen http://localhost:3666 and you're in.
Full docs at docs.gryt.chat — architecture, configuration, deployment, and more.
See the contributing guide for how to get involved.
Gryt wouldn't exist without these projects and resources. I'm forever grateful to the people behind them for sharing their work with the world.
Libraries that power Gryt:
- Pion WebRTC — Pure Go WebRTC stack that the entire SFU is built on. Sean DuBois and the Pion community taught me more about WebRTC than anything else
- RNNoise via @shiguredo/rnnoise-wasm — Jean-Marc Valin's neural network noise suppression, compiled to WASM for the browser
- Radix UI — Accessible, unstyled component primitives that form the backbone of the UI
- Socket.IO — Real-time signaling between client and server
- Electron — Desktop app shell with native OS integration
Specs and references:
- MDN WebRTC API docs — The single best reference for understanding WebRTC in the browser
- AV1 RTP spec (Dependency Descriptor) — The spec that made SVC layer-aware forwarding possible
- WebRTC Simulcast Playground by Orphis — Invaluable for understanding simulcast, SVC scalability modes, and encoder behavior
- mediasoup documentation — Excellent SFU architecture reference that shaped how I think about track forwarding
- Microsoft Application Loopback Audio Capture sample — The WASAPI example that showed how to capture per-process audio on Windows while excluding Gryt's own audio
Projects that inspired the journey:
- Mumble, Jitsi, Revolt, LiveKit, coturn, and many others — see The Projects That Paved the Way for the full story
This project is licensed under the GNU Affero General Public License v3.0 (AGPL-3.0).
For commercial licensing inquiries, contact sivert@gryt.chat.