Private messaging, peer to peer.
MeshTalk discovers peers on your LAN and punches through NATs for remote connections. Messages are end-to-end encrypted. No servers store your data.
███╗ ███╗███████╗███████╗██╗ ██╗████████╗ █████╗ ██╗ ██╗ ██╗ ████╗ ████║██╔════╝██╔════╝██║ ██║╚══██╔══╝██╔══██╗██║ ██║ ██╔╝ ██╔████╔██║█████╗ ███████╗███████║ ██║ ███████║██║ █████╔╝ ██║╚██╔╝██║██╔══╝ ╚════██║██╔══██║ ██║ ██╔══██║██║ ██╔═██╗ ██║ ╚═╝ ██║███████╗███████║██║ ██║ ██║ ██║ ██║███████╗██║ ██╗ ╚═╝ ╚═╝╚══════╝╚══════╝╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝╚══════╝╚═╝ ╚═╝discover › 3 peers found you › Welp, there goes the camp's internet connection... ami › MeshTalk still works, we're on LAN :) you › sending the photos now ⤓ sunset.jpg · 4.2 MiB ✓ delivered
ARCHITECTURE
How MeshTalk connects you
LAN peers connect directly. Remote peers use STUN hole punching with a DERP relay fallback — all encrypted.
LAN Discovery
UDP broadcast finds peers on your local network. No internet or server required. The lower peer ID opens an authenticated TCP connection.
NAT Traversal
STUN-assisted UDP hole punching for direct remote connections. When direct fails, MeshTalk Relay carries encrypted frames through the control service.
End-to-End Encryption
X25519 key exchange, AES-256-GCM encryption, Ed25519 signatures. The control service never sees your messages or room secrets.
OpenTUI / CLI
│
local IPC
│
Python backend ──── LAN broadcast + TCP ──── LAN peers
│
├──── encrypted endpoint cards ──── control service
│
├──── STUN + reliable encrypted UDP ──── remote peers
│
└──── MeshTalk Relay (fallback) ──── remote peers
CAPABILITIES
Built for real communication
E2EE Messages
Ephemeral X25519 keys and AES-256-GCM. Every message is encrypted for its recipient only.
Group Chats
Named rooms with pairwise fan-out encryption. Offline members get queued delivery on reconnect.
File Transfer
Send files up to 50 MiB directly. Each chunk gets its own ephemeral key for forward secrecy.
TUI & CLI
Terminal-native interfaces. Works over SSH, in tmux, or anywhere your terminal goes.
Docker Support
Pre-built multi-arch images. Docker Compose setup for the control service and client.
Self-Updates
Built-in update mechanism. Run meshtalk update --install to stay current.
DOWNLOAD
Get MeshTalk
One-line install or manual download. Binaries include the backend, CLI, and TUI — no Python or Bun required at runtime.
Quick Install
curl -fsSL https://go.qincai.xyz/getmeshtalk | bash
Pass --non-interactive to skip prompts. Use --help for all options.
Linux requires glibc 2.38+ (Ubuntu 24.04+, Debian 13+, Fedora 39+). Build from source for older systems.
Start meshing.
Download MeshTalk, share a room invite, and talk privately. No accounts, no servers, no middlemen.