Bahuckel Relay
Self-hosted voice & text for your community. Servers, channels, DMs, voice, screen share.
Bahuckel Relay is the second generation of Bahuckel: a native desktop client and a self-hosted server, written in C# on .NET 10. You run the server on your own hardware or a small VPS; your community connects to it, and nobody else sees the traffic.
What you get
- Servers, channels, threads and DMs with pinned messages, search, uploads and link previews.
- Voice channels on an Opus UDP relay with per-peer mixing, noise suppression and a transmit gate.
- Screen share and camera with hardware-accelerated H.264 where the machine has it.
- A native client built with Avalonia: fast startup, low memory, real window management, no bundled browser.
- Dark UI with optional neon accents, the same look this site uses.
Security by default
- Hybrid ML-KEM + ECDH handshake, so session keys hold up against a future quantum adversary.
- Every media packet is sealed with AES-GCM under a per-sender key. Headers are authenticated, replays are rejected, and there is no downgrade path to cleartext.
- Uploads are encrypted at rest in 64 KB segments, so HTTP range requests decrypt only what they serve.
- Message retention, rate limits and proxy trust are explicit server settings, never silent defaults.
Self-hosting
The server is a single process with an embedded SQLite store. Put it behind a reverse proxy or a Cloudflare Tunnel for TLS, open the voice UDP port, and you are done. Setup guidance for a small VPS is available on request for a modest fee, but most people manage on their own with the docs.
Licensing
MIT for Bahuckel’s own code. Bundled libVLC binaries are LGPL and keep their notice obligations; see the third-party notices shipped with each release.