HUNGNGO.NET
Back to projects

BLML

Self-hosted, invite-only chat for a private group — iOS, Android and web clients, your server, your data.

Built with
GoPostgreSQLiOSAndroidWebRTC

Overview

A self-hosted chat app for a private group — family, friends, a small team. Native iOS and Android apps plus a web client, all talking to a single Go server backed by PostgreSQL that you run. Messages, photos, and files stay on your own machine: no third-party accounts, no ads, no analytics.

Problem

Group chat for the people closest to you runs on someone else's servers, under someone else's terms. For a family or a small team that wants modern messaging — receipts, replies, voice messages, calls — without handing its private life to a platform, the options are surprisingly thin.

Solution

Invite-only by design: creating an account requires a registration code the server owner controls, so a public address never means a public server. On top of that sits a full modern messenger — one-to-one and group chats, delivery and read receipts, replies and editing, voice messages, attachments up to 100 MB, @mentions, pinned messages, polls, broadcast channels, and WebRTC voice and video calls direct between devices. Even chat wallpapers and link previews are served from your own server, so nothing external is needed.

Lessons learned

Self-hosting only works for a family if it never feels self-hosted. All the effort goes into making the invite flow, the clients, and the day-to-day experience as smooth as a commercial app — the moment it feels like a science project, the group moves back to the defaults.

Future improvements

Production deployment on a VPS with automated backups, and a polished onboarding path so a non-technical person can stand up their own server.


Source on GitHub