Skip to content

Chatto

A fully-featured, real-time chat application that's easy to self-host. One binary, no external dependencies required.

Chatto is a fully-featured real-time chat application built for simplicity and scalability. It is designed to be particularly easy to self-host, starting with a single binary that includes everything you need to get started.

  • Reliable real-time messaging with a familiar UI — spaces, rooms, threads, reactions, typing indicators, presence, and more
  • Voice and video calls with screen sharing
  • Highly flexible configuration and permission systems
  • Privacy-focused design with per-user encryption keys for straightforward GDPR-compliant data deletion
  • Scales from a single instance to a planet-spanning supercluster (yes, really)

See the Roadmap for a full feature list and what’s coming next.

  • Single binary compiled from a Go codebase
  • NATS and JetStream handle both real-time delivery and data persistence — no separate database required
  • An embedded NATS server gets you started quickly, or connect to a dedicated NATS cluster for horizontal scaling and high availability
  • The Svelte web UI is served directly from the binary — no separate frontend build step needed

Chatto provides a full chat experience with no external dependencies. For advanced features:

  • S3-compatible object storage — recommended for file uploads at scale
  • ffmpeg — required for video and GIF processing (included in the Docker image)
  • LiveKit — required for voice and video calls (free to self-host)