erambler/content/post/2021-08-04-mxadm.md

1.9 KiB

title slug date type tags
mxadm: a small CLI Matrix room admin tool introducing-mxadm 2021-08-04T17:11:49+01:00 post
Rust
Matrix
Open source
Communication

I've enjoyed learning Rust (the programming language) recently, but having only really used it for solving programming puzzles I've been looking for an excuse to use it for something more practical.

At the same time, I've been using and learning about Matrix (the chat/messaging platform), and running some small rooms there I've been a bit frustrated that some pretty common admin things don't have a good user interface in any of the available clients.

So…

I decided to write a little command-line tool to do a few simple tasks, and it's now released as mxadm! It's on crates.io, so if you have Rust and cargo available, installing it is as simple as running cargo install mxadm.

I've only taught it to do a few things so far:

  • List your joined rooms
  • Add/delete a room alias
  • Tombstone a room (i.e. redirect it to a new room)

I'll add more as I need them, and I'm open to suggestions too.

It uses matrix-rust-sdk, the Matrix Client-Server SDK for Rust, which is built on the lower-level Ruma library, along with anyhow for error handling. The kind folks in the #matrix-rust-sdk:matrix.org have been particularly kind in helping me get started using it.

More details from:

Suggestions, code reviews, pull requests all welcome, though it will probably take me a while to act on them. Enjoy!