Gua
gua.globalAn experimental messenger built on Matrix, exploring whether a federated, end-to-end encrypted network can feel as simple as WhatsApp.
- The hard problem
- Phone-number sign-up and contact discovery usually assume one central directory. On Matrix, accounts live on independent homeservers, so the app has to find the right homeserver for a number before sign-in, without asking people to choose one.
- Key decisions
-
- Identity: an OpenID Connect provider written from scratch in Java, with a PIN or passkey as a second factor.
- Contact discovery: address-book numbers are hashed and matched in memory and never stored. The directory they are matched against is keyed by peppered hashes.
- Routing: the app finds a number's homeserver before sign-in. Routing across independently run homeservers, with a signed, append-only roster, is experimental.
- Operations
- Kubernetes, with separate development and production environments and approval-gated production deploys.
- Status
- Invite-only beta on iOS and Android, federated with the wider Matrix network.
- Talk
-
Making Matrix Feel Like WhatsApp Without Centralizing It
Lightning talk · Matrix Conference 2026, Malmö