A survey of Matrix protocol implementations
Find a file
2023-08-03 21:13:49 -04:00
README.org Added more client / library implementations and details 2023-08-03 21:13:49 -04:00

Survey of known Matrix implementations

The goal here is to assemble a list of known Matrix implementations, both current and historic, to aid in research. This list is a work in progress.

Clients

Applications

Application License Platform / Framework Language Website Repo Protocol impl. Notes Status (dd-mm-yyyy)
Element-web Apache2 Web / iOS / Android TypeScript https://element.io/ https://github.com/vector-im/element-web Bespoke (matrix-react-sdk) First party client developed by New Vector Ltd. Active
Quartenion GPL3/LGPL2/BSD Qt C++ https://matrix.org/ecosystem/clients/quaternion/ https://github.com/quotient-im/Quaternion Bespoke (libQuotient) An original native C++/Qt client implementation Active
NeoChat GPL3 Qt C / C++ https://apps.kde.org/neochat/ https://github.com/KDE/neochat/ libQuotient Official client of the KDE Project Active
Fractal GPL3 GTK+ 4 Rust Repo https://gitlab.gnome.org/GNOME/fractal Ruma (originally bespoke) Modern Gnome-adjacent GTK+ client Active
Gomuks AGPL3 Terminal (TUI) Go https://maunium.net/go/gomuks/ https://github.com/tulir/gomuks Mautrix-go A terminal Matrix client implemented in Go
Chinny AGPL3 Web JS/TypeScipt https://cinny.in/ https://github.com/cinnyapp/cinny ? An AGPL3 web client
Matrix-commander GPL3 Terminal (CLI) Python Repo https://github.com/8go/matrix-commander Matrix-nio A CLI interface to the Matrix network
FluffyChat AGPL3 Web / iOS / Android Dart https://fluffychat.im/ https://github.com/krille-chan/fluffychat Bespoke? A mobile-friendly multi-platform client
Ditto GPL3 Web / iOS / Android JS (React Native) https://www.dittochat.org/ https://gitlab.com/ditto-chat/ditto Bespoke? Mobile-friendly multi-platform client (no longer maintained)
miitrix Apache2 Nintendo 3DS C++ https://github.com/Sorunome/miitrix/ Matrix-3ds-sdk A Matrix cliend developed for the Nintendo 3Ds Last active 3-8-2020
Syphon AGPL3 FlatPak / iOS / Android Dart https://www.syphon.org/ https://github.com/syphon-org/syphon ? A cross-platform "privacy centric" matrix client Last active 22-5-2023
weechat-matrix ? (Attribution, liability disclaimer) Terminal (TUI) Python Repo https://github.com/poljar/weechat-matrix ? A weechat extension written in Python Maintainence only
weechat-matrix-rs ? (Attribution, liability disclaimer) Terminal (TUI) Rust Repo https://github.com/poljar/weechat-matrix-rs matrix-rust-sdk A weechat extension written in Rust "Work in progress," last active 4-10-2022
SchildiChat Apache2 Web / iOS / Android TypeScript https://schildi.chat/ https://github.com/SchildiChat matrix-react-sdk A Fork of Element
Nheko-Reborn GPL3 Qt C++ https://nheko-reborn.github.io/ https://github.com/Nheko-Reborn/nheko Bespoke? A native desktop client which intends not to look like IRC Reborn (active)
Nheko ? ? ? ? ? ? Nheko-reborn implies the existence of Nheko Not reborn
hydrogen Apache2 Web JS/TypeScript Repo https://github.com/vector-im/hydrogen-web Bespoke (hydrogen-view-sdk) First party "lightweight" client developed by New Vector Ltd. Active (work in progress)
iamb Apache2 Terminal (TUI) Rust Repo https://github.com/ulyssa/iamb matrix-rust-sdk Terminal client with Vim bindings Active
mnotify MIT Terminal (CLI) Rust Repo https://github.com/rumpelsepp/mnotify/ matrix-rust-sdk CLI tool for sending messages from a headless machine WIP, last active 1-7-2023
gotktrix AGPL3 GTK+ 4 Go Repo https://github.com/diamondburned/gotktrix/ Gotrix A native GTK+ 4 client implemented in Go WIP, last active 5-7-2023
kazv AGPL3 Qt 5 C++ Repo https://lily-is.land/kazv/kazv Bespoke (libkazv) A native Qt client implemented in C++ Active
quadrix ? Desktop / Mobile (ReactXP) TypeScript Repo https://github.com/alariej/quadrix Bespoke A lightweight web client (with mobile / desktop apps) Active
thunderbird Desktop C++, Rust https://www.thunderbird.net/ https://hg.mozilla.org/mozilla-central Bespoke?

Libraries

Library License Language Website Repo Notes Client / Server functionality Status
Ruma (matrix-rust-stk) Apache 2 Rust https://ruma.io/ https://github.com/matrix-org/matrix-rust-sdk Was originally a project to make a Rust homeserver Client + Server Active
Matrix-sdk (rust) Active
libQuotient LGPL 2.1 C++ (Qt) https://quotient-im.github.io/libQuotient/ https://github.com/quotient-im/libQuotient Backbone of Quartenion, also used by NeoChat Active
Mautrix-go MPL2 Go https://maunium.net/go/mautrix/ https://github.com/mautrix/go A Golang matrix framework, used by gomuks, go-neb, mautrix-whatsapp
Matrix-nio ISC (attribution) Python https://github.com/poljar/matrix-nio/ A "multi layered" python framework for Matrix clients
Matrix-react-sdk
Matrix-js-sdk
Hydrogen-view-sdk
Matrix-3ds-sdk Apache 2 C++ Repo https://github.com/Sorunome/matrix-3ds-sdk/ A dated Matrix client SDK developed for the Nintendo 3DS Client
Gotrix MIT Go Repo https://github.com/chanbakjsd/gotrix WIP Client
libkasv AGPL3 C++ Repo https://lily-is.land/kazv/libkazv A Matrix client SDK built on lager, influenced by "value oriented design" Client Active

Servers

Software License Language Website Repo Protocol impl. Notes
Synapse Apache2 Python https://matrix-org.github.io/synapse/latest/ https://github.com/matrix-org/synapse/ Bespoke First party homeserver developed by New Vector Ltd. "The Reference Implementation"
Construct BSD C++ Repo https://github.com/matrix-construct/construct Bespoke A homeserver implemented in C++
Conduit Apache2 Rust https://conduit.rs/ https://gitlab.com/famedly/conduit Bespoke A lightweight Matrix homeserver programmed in Rust
Dendrite Apache2 Go https://matrix-org.github.io/dendrite/ https://github.com/matrix-org/dendrite Bespoke A scalable Mstrix homeserver programmed in Go
Ruma Homeserver MIT Rust https://ruma.io/news/ruma-is-dead-long-live-ruma-2020-04-10/ https://github.com/ruma/homeserver Bespoke An abandoned attempt at creating a Matrix homeserver in Rust
Transform Deprecated
Pallium Deprecated
mxhsd Deprecated
Matrex Deprecated
Malestrom Deprecated
jSynapse Deprecated
Dendron Deprecated
bullettime Deprecated
Ligase Deprecated