#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.)

7 stable releases

new 1.4.1 Dec 12, 2024
1.4.0 Nov 19, 2024
1.3.0 Sep 22, 2024

#1963 in Network programming

Download history 435/week @ 2024-09-09 195/week @ 2024-09-16 62/week @ 2024-09-23 45/week @ 2024-09-30 8/week @ 2024-10-07 10/week @ 2024-10-14 3/week @ 2024-10-21 4/week @ 2024-10-28 7/week @ 2024-11-04 8/week @ 2024-11-11 171/week @ 2024-11-18 16/week @ 2024-11-25 19/week @ 2024-12-02

215 downloads per month
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

~33–51MB
~850K SLoC