Skip to content

Kraken

Self-hosted Discord-like voice and text chat.

Kraken is an open-source communication platform that gives you full control over your data. Built with a modern stack — NestJS, React, MongoDB, and LiveKit — it provides real-time messaging, voice and video calls, and community management out of the box.


Features

  • Real-time messaging — WebSocket-powered text channels with mentions, reactions, attachments, and threads
  • Voice & video calls — Powered by LiveKit with screen sharing and replay buffer support
  • Communities — Create servers with text and voice channels, roles, and permissions
  • Direct messages — Private conversations and group DMs with file attachments
  • Role-based access control — Granular permissions at the instance and community level
  • Desktop app — Electron-based desktop client alongside the web interface
  • Self-hosted — Run on your own infrastructure with Docker Compose or Kubernetes

  • :material-rocket-launch: Installation

    Get Kraken running locally in under 5 minutes with Docker Compose.

  • :material-cog: Configuration

    Environment variables reference for backend and frontend.

  • :material-server: Deployment

    Self-host Kraken in production with Docker Compose or Kubernetes.

  • :material-account-group: Contributing

    Help improve Kraken — bug reports, features, and code contributions.


Tech stack

Layer Technology
Backend NestJS (TypeScript)
Frontend React 19 + Vite + Material UI
Database MongoDB with Prisma ORM
Real-time Socket.IO with Redis adapter
Voice/Video LiveKit
State Redux Toolkit with RTK Query
Auth JWT with Passport.js
Desktop Electron

License

Kraken is dual-licensed under the AGPLv3 and a commercial license. Free for everyone — including commercial use — as long as you comply with AGPL terms. A commercial license is available for proprietary deployments.

Contact: licensing {at} krakenchat [dot] app