A community-maintained Matrix homeserver written in Rust, continuing the archived conduwuit project.
matrix-construct/tuwunel
A Rust-based Matrix homeserver, positioned as a drop-in alternative to Synapse and successor to conduwuit.
Open-source alternative to:Synapse
- Stars
- 2,738
- Forks
- 244
- Open issues
- 84
- Last commit
- 10 hours ago
What is it?
Tuwunel is a Matrix homeserver written entirely in Rust. It works with existing Matrix clients, bridges and bots, and aims to fully implement the Matrix Specification for all but the most niche uses. It is positioned as a lower-cost alternative to Synapse for people who want to run their own chat server.
The project is the official successor to conduwuit and supports migrating in place from conduwuit, Conduit and forks of conduwuit, which read their RocksDB databases on first boot. Migration from Synapse is not yet supported. Configuration is done through a TOML file, with server_name and database_path as required settings, and TLS is commonly handled by a reverse proxy such as Caddy.
Deployment options include Docker images on DockerHub and GHCR, static binaries, Deb and RPM packages, an apt repository, and packages for Arch, Alpine, Nix and Gentoo.
Key features
- 01Implements the Matrix Specification for nearly all use cases.
- 02Stores data in RocksDB and migrates in place from Conduit and conduwuit databases.
- 03Configured with a single TOML file and a secret registration token option.
- 04The first registered account becomes the server admin.
- 05Ships as Docker images, static binaries, and Deb, RPM and Nix packages.
Use cases
- Running a private Matrix chat server for a family, team or community.
- Replacing a Synapse deployment with a lighter Rust-based homeserver, where migration is supported.
- Hosting a homeserver for Matrix clients, bridges and bots.
- Deploying a self-hosted Matrix server on Debian, Ubuntu, Fedora or NixOS.
Quick start
- 1
Pull the official Docker image
docker pull jevolk/tuwunel:latest - 2
Or clone the source code
git clone https://github.com/matrix-construct/tuwunel.git - 3
Copy and edit tuwunel-example.toml, setting server_name and database_path
- 4
Start the server, connect a client and register; the first registered user becomes admin
Things to know
- Migrating from Synapse is not supported yet.
- The server_name cannot be changed once set, so choose it carefully.
In collections
Topics
FAQ
- What is tuwunel?
- A Rust-based Matrix homeserver, positioned as a drop-in alternative to Synapse and successor to conduwuit. Tuwunel is a Matrix homeserver written entirely in Rust. It works with existing Matrix clients, bridges and bots, and aims to fully implement the Matrix Specification for all but the most niche uses. It is positioned as a lower-cost alternative to Synapse for people who want to run their own chat server.
- Is tuwunel free to use? What license does it have?
- tuwunel is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
- Is tuwunel still maintained?
- Actively maintained. The last commit to tuwunel was on Nov 6, 2026.
- What can I use tuwunel for?
- Running a private Matrix chat server for a family, team or community. Replacing a Synapse deployment with a lighter Rust-based homeserver, where migration is supported. Hosting a homeserver for Matrix clients, bridges and bots. Deploying a self-hosted Matrix server on Debian, Ubuntu, Fedora or NixOS.
- How do I install tuwunel?
- Pull the official Docker image: docker pull jevolk/tuwunel:latest Or clone the source code: git clone https://github.com/matrix-construct/tuwunel.git Copy and edit tuwunel-example.toml, setting server_name and database_path Start the server, connect a client and register; the first registered user becomes admin
- Where can I get tuwunel?
- The source code and installation instructions are on GitHub: https://github.com/matrix-construct/tuwunel
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
Synapse is an open source Matrix homeserver written in Python and Rust, maintained by Element.
A web and desktop client for the Matrix open communication protocol, built on the Matrix JS SDK.
A simple, elegant web client for the Matrix open messaging protocol, built with React and TypeScript.
Open-source instant messaging server in Go that developers integrate into their own apps, with SDK, REST API and webhooks.
A Flutter-based, open source Matrix chat client for Android, iOS, Linux and web, developed by Linagora.