Skip to content

Why mutter?

Four design choices that shape every part of the product.

  • Truly end-to-end

    Built on MLS (RFC 9420). The server sees ciphertext only — your conversations never leave your devices in readable form.

  • No phone, no email

    Username and password. We collect nothing about who you talk to, and there is no social graph to leak.

  • Multi-device by design

    Add a new phone or laptop with a QR scan. Your devices form a single cryptographic group — without weakening forward secrecy.

  • Native everywhere

    A native app per platform, not a webview pretending. iOS first, then macOS, Android, Web, Windows.

How it works

No new cryptography invented here. We compose well-studied primitives in a way that keeps the server honest.

  1. Identity per device

    Each device generates an Ed25519 keypair. Private keys never leave the device — not for backup, not for sync, not for support.

  2. MLS group per conversation

    Every chat is an MLS group — 1:1, group, or your own multi-device sync. One protocol, audited at the IETF level, for all of them.

  3. Server as a dumb relay

    The server routes ciphertext blobs through NATS JetStream and queues key packages. It does not see content, contacts, or membership.

What we don't do

Restraint is a feature. These are deliberate omissions, not a roadmap.

  • No federation
  • No phone-number contact discovery
  • No public channels or bots
  • No cryptocurrency or payments
  • No engagement metrics
  • No "stories" or ephemeral broadcasts
  • No supergroups beyond 100 members
  • No ads, ever

Open & auditable

The protocol is an open IETF standard: MLS, RFC 9420. The cryptographic core is AWS mls-rs, a Rust implementation we link into every client through a thin FFI layer.

The UI is hand-written native code per platform. No shared JS runtime, no opaque blobs in the trust path.

The full source will move to public hosting once Phase 0 is done. Today it lives at:

git.it-laboratory.com/mrkutin/mutter

Status

Phase 0 of 8 — Foundation

mutter is in private alpha. We are establishing protocol baselines, freezing the wire format, and shipping the first end-to-end testable build on iPhone.

Follow progress via the team blog (TBD).