#client-server #server-api #messaging #ruma #sdk #api-client #linker

mxlink

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

6 stable releases

new 1.4.0 Nov 19, 2024
1.3.0 Sep 22, 2024

#1867 in Network programming

23 downloads per month
Used in baibot

LGPL-3.0

99KB
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

~33–50MB
~842K SLoC