# Matrix

Matrix is kind of like a federated IRC system and Element is a web and mobile interface to the Matrix system.

Dendrite is Matrix homeserver written in Go. It is a rewrite of synapse that is written in Python that has issues scaling.

## Bridges

- IRC
- matrix-hookshot - Bridge between Matrix and multiple project management services, such as GitHub, GitLab and JIRA.
- Matrix-iMessage - Matrix-iMessage puppeting bridge.

## Bots

- hebbot - Matrix bot which can generate "This Week in X" like blog posts.
- maubot - Plugin-based Matrix bot system.
- Matrix ChatGPT Bot

## Notes

- Dendrite: You don't need to run Kafka unless working on distributed stuff. It is composed of several microservices (room server, sync api, media api...). Kafka is used to transfer messages between those microservices.

## Links

- What is Matrix?
- Matrix doc
- sytest - Black-box integration testing for Matrix homeservers.
- Unofficial list of public Matrix servers
- Matrix GSOC ideas
- Matrix IRCd
- Riot Web - Web client for Matrix.
- Ruma - Matrix homeserver written in Rust. Discontinued.
- Client-Server API
- Matrix Blog
- The 2018 Matrix Holiday Special
- HN: The Matrix.org 2018 year in review
- Nio - Upcoming matrix client for iOS.
- Dendrite design
- Dendrite checklist - API to finish for release.
- Running your own secure communication service with Matrix and Jitsi (2020) (HN)
- matrix-rust-sdk - Matrix Client-Server SDK for Rust.
- Declarative, Decentralised, and Secure communication via Matrix, Jitsi, & NixOS (2019)
- mautrix-telegram - Matrix-Telegram hybrid puppeting/relaybot bridge.
- Maelstrom - High performance Matrix Home Server in rust.
- Matrix iOS SDK
- Conduit - Simple, fast and reliable chat server powered by Matrix. Written in Rust. (Code)
- Introducing P2P Matrix (2020) (HN)
- Thoughts on Peer-to-Peer Matrix (2020)
- Seaglass - Truly native Matrix client for macOS - written in Swift/Cocoa, with E2E encryption support.
- NovaChat - Multi-Network Chat. (HN)
- HN: Matrix (2020)
- Gitter is joining Matrix (2020) (HN)
- Dendrite is entering Beta (2020) (HN)
- Free Small Matrix Server
- Nheko - Desktop client for Matrix using Qt and C++17.
- Combating abuse in Matrix – without E2EE backdoors (2020) (Lobsters) (HN)
- How we fixed Synapse's scalability (2020) (Lobsters)
- Using Matrix to replace proprietary and centralized chat apps (2020) (HN)
- Free Small Matrix Server
- libQuotient - Qt5 library to write cross-platform clients for Matrix.
- Quaternion - Qt5-based IM client for Matrix.
- The Matrix Holiday Special 2020 (Lobsters)
- Cerulean - Experimental Matrix client intended to demonstrate the viability of freestyle public threaded conversations a la Twitter.
- retrix - Lightweight matrix client.
- Building a virtual coffee bot for Mattermost and Matrix (2021)
- Element Matrix Client Code
- Matrix (An open network for secure, decentralized communication) server setup using Ansible and Docker
- Message Retention Policies in Matrix (2021)
- FOSDEM 2021: Building massive virtual communities in Matrix
- How we hosted FOSDEM 2021 on Matrix (2021) (HN)
- Hummingbard - Decentralized communities built on Matrix. (HN) (Code)
- Element Home - Element app, but faster, personalized and under your control. (Article) (HN)
- Pinecone - Peer-to-peer overlay routing for the Matrix ecosystem. (Article) (HN)
- Element raises $30M to boost Matrix (2021) (HN)
- Matrix JavaScript SDK
- Cinny - Web-based matrix client. (Code) (HN) (Web Code)
- TheBoard - Collaborative Whiteboard powered by the [matrix] protocol and infrastructure.
- matrix-media-repo - Matrix media repository with multi-domain in mind.
- Sygnal - Reference Push Gateway for Matrix.
- Public Rooms - Matrix Static - Static Go generated preview of public world readable Matrix rooms. (Code)
- Gotrix - Implementation of the client portion of Matrix's client-server API.
- Element One - All of Matrix, WhatsApp, Signal and Telegram in one place. (Article) (HN)
- Is Matrix less private than other E2EE messaging protocols? (2019) (HN)
- Hemppa - Generic modular bot for Matrix.
- Matrix Discord Bridge
- Sign in with Matrix - Federated sign-in component for your web app (using Matrix). (HN)
- OCaml matrix - Implementation of a matrix server in OCaml for MirageOS.
- Awesome Matrix
- Matrix Corporal - Reconciliator and gateway for a managed Matrix server.
- Matrix CRDT - Enables you to use Matrix as a backend for distributed, real-time collaborative web applications that sync automatically. (HN)
- Third Room - Decentralized metaverse platform built on top of the Matrix protocol. (Intro)
- mautrix-go - Go Matrix framework.
- matrix-oauth - OAuth 2.0 server for Matrix accounts.
- Native Matrix VoIP with Element Call (2022) (HN)
- mx-puppet-slack - Slack puppeting bridge for Matrix.
- Matrix Video Chat
- Element Call for macOS - Wrapper app for Element Call that adds support for Camera & Microphone toggling via keyboard.
- Matrix Highlight - Decentralized and federated way of annotating the web based on Matrix.
- Playing with Matrix: Conduit and Synapse (2022)
- Matrix.to - Simple stateless privacy-protecting URL redirecting service for Matrix. (Code)
- Element X iOS - Matrix client provided by Element and based on the Matrix Rust SDK.
- Matrix React SDK
- Mautrix - Python 3 asyncio Matrix framework.
- OAuth 2.0 authentication server for Matrix
- Matrix protocol spec
- Quadrix - Minimal, simple, multi-platform chat client for the Matrix protocol.
- Matrix notes (2022)
- matrix-commander - Simple but convenient CLI-based Matrix client app for sending and receiving.
- Threematrix - Messenger bridge between Threema and Matrix.
- HG HomeServer - Minimal Matrix HomeServer written in TypeScript.
- Matrix public archive - View the history of world readable Matrix rooms.
- The Matrix Summer Special 2022
- Commune - Communications suite built on top of matrix.
- gomatrixserverlib - Go library for matrix federation.
- Eigen - macOS native Matrix client.
- Pixel - Matrix client for the terminal.
- trinity - Matrix bots in Rust and WebAssembly.
- mjolnir - Moderation tool for Matrix.
- Matrix Cookbook (2012)
- Matrix Specification
- Matrix 1.5 release
- Dendrite (Matrix) over OpenBSD
- Matrix Webhook - Post a message to a matrix room with a simple HTTP POST.
- Dimension - Open source integration manager for matrix clients, like Element.
- Conduit - Matrix homeserver written in Rust.
- Matrix 2.0: How we’re making Matrix go voom (2023) (HN)
- Draupnir - Moderation tool for Matrix.
- PushBits - Simple server for push notifications via Matrix.
- iamb - Matrix client for Vim addicts.
- What happens when a Matrix server disappears? (2023) (Lobsters)
- gomuks - Terminal based Matrix client written in Go.