OPEN SOURCE DESKTOP MESSENGER

Desktop messenger built with Electron, Go, and LiveKit.

Direct messages, group chats, calls, screen sharing, and a self-hostable backend.

Direct messages, group chats, and realtime presence.

Persistent WebSocket connections deliver instant messaging, typing indicators, read receipts, and emoji reactions in a dedicated desktop window.

Messenger Desktop Workspace
Direct messaging, group channels, and real-time presence
Messenger Desktop Workspace

1-on-1 and group calls with screen sharing.

Talk face to face, share your screen, and stay connected with reliable real-time calls.

Go Backend

Handles authentication, call permissions, and LiveKit room access.

LiveKit + WebRTC

Real-time audio and video with low-latency media routing.

Screen Sharing

Share an application window or your entire screen.

Local Audio Processing

Noise suppression runs locally before audio is sent.

1-on-1 Audio & Video
Low-latency peer media stream routed via LiveKit SFU
1:1 Call
Multi-Window Desktop Workspace
Detached floating chat windows synchronized over Electron IPC
Multi-Window Desktop Workspace

Independent windows for chats.

Keep multiple conversations open in separate desktop windows without losing realtime state.

Independent Chat Windows

Open any conversation in its own window and keep it alongside the main messenger.

Shared App State

All windows stay connected to the same session, keeping messages, presence, and realtime events in sync.

Electron IPC

Windows communicate through typed IPC while the main process manages shared application state and connections.

The source code is public.

The backend services, desktop app, and infrastructure are fully open source and available on GitHub under the MIT License.

Full source code: Explore the Go services, Electron app, and infrastructure.
Self-hostable: Run the core stack locally or on your own VPS with Docker Compose.
MIT License: Free to inspect, fork, modify, and host yourself.
quickstart.sh
# 1. Clone the repository
$git clone https://github.com/B0R9F3D9/messenger.git
# 2. Change directory
$cd messenger
# 3. Start local infrastructure
$make up
Docker Compose profile

Frequently asked questions.

Technical details, operational requirements, and design trade-offs.

No. Messages are encrypted in transit using TLS and stored on the server in PostgreSQL. Media attachments are stored in SeaweedFS. The project is designed for self-hosted deployments where administrators control the infrastructure. It is not designed as a zero-knowledge or whistleblower platform.

Download Messenger for desktop

macOS, Windows, and Linux builds are available for download.

macOS

Apple Silicon and Intel binaries. Requires macOS 15+.

Windows

Compatible with Windows 10 and Windows 11 (64-bit).

Linux

Standalone AppImage or native Debian package.