Project · in development

One codebase, an encrypted messenger for every platform

Chatter is a privacy-first, end-to-end encrypted messenger I'm building on the side — a single Rust client (Slint UI) that runs on Linux, Windows, and Android today, with iOS and macOS planned, on a Go backend. I design and build all of it — the cryptography, the backend, the client, and the infrastructure to run it. It's still in development, but it's how I stay hands-on across the whole stack.

The hard problems I'm solving

  • One codebase, every platform: a single Rust client (Slint UI) sharing one crypto core, so end-to-end encryption behaves identically everywhere — X3DH key exchange, Double Ratchet forward secrecy, group Sender Keys, and post-quantum Kyber prekeys. Running and tested on Linux, Windows, and Android; iOS and macOS planned.
  • Sealed sender: the server cannot identify who sent a message, even with full database access — with timing-attack resistance and multi-recipient validation.
  • Ephemeral, correlation-resistant mailboxes (based on NDSS ’21 research) using blind signatures, so messages can’t be linked by timing.
  • Multi-device sync with per-device auth tokens (HKDF, not JWT), per-device prekey bundles, and rotated group keys.
  • Encrypted voice and video (LiveKit + WebRTC) with end-to-end key rotation and screen-share ingest.
  • Chunked AES-256-GCM file encryption with virus scanning and anonymous, presigned access.

The stack

BackendGo + ConnectRPC services, Temporal workflows (saga compensation), SpiceDB (Zanzibar) permissions
ClientsOne Rust + Slint client for every platform — running on Linux, Windows, and Android; iOS and macOS planned
DataPostgreSQL, Redis, client-side SQLite/SQLCipher
Cryptolibsignal (X3DH, Double Ratchet, Sender Keys), Kyber1024 post-quantum, AES-256-GCM
InfraDocker Compose, K3s (3-node HA), Fly.io, Terraform/Terragrunt, systemd
QualityGitHub Actions CI (lint, race, security scan, proto checks), Prometheus + Grafana + OpenTelemetry

Deep dives on the blog

Source on GitHub →

Why it's here

Plenty of people can talk about architecture. This is me actually building it across the whole stack — cryptography, backend, native clients, and the infrastructure to run it. It's where the idea-to-production, building-blocks, architecture review, and AI-app audit work comes from — applied to my own code first.

Status: a personal project in active development — not yet released.

Want this kind of work on your product?

A free 30-minute call. Tell me where you are; I’ll tell you the fastest path to shipped.

Book a free discovery call