Continuwuity: A Community Matrix Homeserver in Rust

Continuwuity: A Community Matrix Homeserver in Rust

Continuwuity is a Matrix homeserver written in Rust. It is the community-driven continuation of conduwuit, which was itself a feature-rich fork of Conduit. When conduwuit was archived, a group of contributors forked it to keep development going.

Why a Rust homeserver?

Synapse, the reference Matrix server, is written in Python and needs PostgreSQL and a fair amount of RAM, especially once you join large federated rooms. The Conduit family runs as a single binary with an embedded RocksDB database and uses far fewer resources, which makes it attractive for personal and small-community servers, including on a Raspberry Pi.

Features

  • Federation with the wider Matrix network
  • End-to-end encryption support for clients
  • Low memory and CPU use
  • Embedded RocksDB: no separate database server
  • Focus on user experience and new features, and fixing conduwuit’s outstanding issues

Migrating from conduwuit

Continuwuity is compatible with conduwuit; the project says migration is as simple as changing the container image name in your Compose file. Back up the database directory first.

Deployment

Run it as a container or binary behind a reverse proxy with HTTPS, and set up federation discovery with .well-known files or DNS so other servers can find yours. Pair it with a client such as Element.

Continuwuity or Tuwunel?

Both continue conduwuit. Tuwunel is described as conduwuit’s official successor and is sponsored by the Swiss government. Continuwuity is the community-run continuation. Both accept conduwuit databases; choose based on which community and release cadence you prefer, and expect the two to diverge over time.