A web and desktop client for the Matrix open communication protocol, built on the Matrix JS SDK.
- Stars
- 173
- Forks
- 47
- Open issues
- 246
- Last commit
- 9 hours ago
What is it?
Twake Chat is a decentralized chat app built on the Matrix protocol, developed by Linagora. It lets users talk over the open Matrix network, and it works with other Matrix clients such as Element, Nheko and NeoChat. The app covers messaging, group and public chats, spaces, and end-to-end encryption with emoji verification and cross signing.
The codebase is written in Dart with Flutter, so one code base targets Android, iOS, Linux and web. The web target uses flutter_vodozemac for end-to-end encryption and is packaged as a Docker image served by nginx, with runtime configuration supplied through a config.json file. The project is a fork of FluffyChat and uses the Matrix Dart SDK.
The repository also documents the development setup for each platform, asset generation with flutter_gen, translation through Weblate, and a profiling workflow for Flutter Web using Chrome DevTools.
Key features
- 01Send messages, images, files and voice messages, with location sharing
- 02Private and public group chats, spaces, and public channels
- 03End-to-end encryption with emoji verification and cross signing
- 04Push notifications and dark mode with custom themes
- 05QR codes for adding contacts without typing Matrix IDs
- 06Runs on Android, iOS, Linux and web from one Flutter codebase
Use cases
- Running a self-hosted or organizational chat service on the Matrix network
- Teams that want an encrypted, decentralized alternative to commercial messengers
- Developers building their own Matrix-based chat client with Flutter
Quick start
- 1
Install Flutter 3.47.5 and verify with flutter doctor
flutter doctor -v - 2
Copy the sample configuration file for the web target
cp config.sample.json config.json - 3
Fetch dependencies and generate code
flutter pub get && flutter pub run build_runner build --delete-conflicting-outputs - 4
Run the app in Chrome
flutter run -d chrome
Things to know
- Web builds need Rust, yq and a prepare-web script before the first run.
- Android, Linux and macOS setup requires specific JDK, SDK and system library versions.
- Development setup on macOS is not listed as supported in the README.
Topics
FAQ
- What is twake-on-matrix?
- A Flutter-based, open source Matrix chat client for Android, iOS, Linux and web, developed by Linagora. Twake Chat is a decentralized chat app built on the Matrix protocol, developed by Linagora. It lets users talk over the open Matrix network, and it works with other Matrix clients such as Element, Nheko and NeoChat. The app covers messaging, group and public chats, spaces, and end-to-end encryption with emoji verification and cross signing.
- Is twake-on-matrix free to use? What license does it have?
- twake-on-matrix is open source under the AGPL-3.0 license. Check the license terms before using it in commercial products.
- Is twake-on-matrix still maintained?
- Actively maintained. The last commit to twake-on-matrix was on Nov 7, 2026.
- What can I use twake-on-matrix for?
- Running a self-hosted or organizational chat service on the Matrix network Teams that want an encrypted, decentralized alternative to commercial messengers Developers building their own Matrix-based chat client with Flutter
- How do I install twake-on-matrix?
- Install Flutter 3.47.5 and verify with flutter doctor: flutter doctor -v Copy the sample configuration file for the web target: cp config.sample.json config.json Fetch dependencies and generate code: flutter pub get && flutter pub run build_runner build --delete-conflicting-outputs Run the app in Chrome: flutter run -d chrome
- Where can I get twake-on-matrix?
- The source code and installation instructions are on GitHub: https://github.com/linagora/twake-on-matrix
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
Encrypted peer-to-peer team chat that syncs directly between devices over Tor, with no central server.
A free, serverless peer-to-peer chat app with end-to-end encryption where messages are never stored and vanish when you leave the room.
A simple, elegant web client for the Matrix open messaging protocol, built with React and TypeScript.
Open-source, self-hostable team chat platform for secure internal and external communications, built in TypeScript.
A end-to-end encrypted messaging app and network that uses no user identifiers, with iOS, Android, desktop and terminal clients.