#ruma #sdk #encryption #messaging #matrix-ruma

mxlink

A library for connecting (linking) to the Matrix Client Server API (for building bots, etc.)

11 stable releases

Uses new Rust 2024

new 1.7.0 Apr 12, 2025
1.6.1 Feb 27, 2025
1.5.0 Jan 24, 2025
1.4.1 Dec 12, 2024
1.3.0 Sep 22, 2024

#849 in Cryptography


Used in baibot

LGPL-3.0

100KB
2K SLoC

Matrix Link (mxlink) is a Rust library (a higher-level abstraction on top of matrix-rust-sdk) for building Matrix services (bots, etc.)

It's similar to headjack, but tries to be less opinionated and more featureful.

It finds use in the 🤖 baibot Matrix bot.

✨ Features

  • 🎈 Easy to use API for getting started with matrix-rust-sdk. See the examples directory or baibot

  • 🔒 Encryption

    • (Optional) At-rest encryption of the session file

    • At-rest encryption of the SQLite data store (performed by matrix-rust-sdk itself)

  • 🔄 (Optional) Support for using matrix-rust-sdk's recovery module for backing up and restoring encryption keys (in case of session / SQLite store data loss)

  • 🖴 Helpers for working with Matrix Account Data on a per-room level or globally

  • 🗂 Some convenience functions around Matrix APIs

Dependencies

~39–58MB
~1M SLoC