iamb

About

iamb is a Matrix client for the terminal that uses Vim keybindings.

This project is a work-in-progress, and there's still a lot to be implemented, but much of the basic client functionality is already present.

Documentation

You can find documentation for installing, configuring, and using iamb on its website, [iamb.chat].

Installation

Install Rust and Cargo, and then run:

cargo install iamb

Configuration

You can create a basic configuration in $CONFIG_DIR/iamb/config.json that looks like:

json { "profiles": { "example.com": { "url": "https://example.com", "user_id": "@user:example.com" } } }

Comparison With Other Clients

To get an idea of what is and isn't yet implemented, here is a subset of the Matrix website's features comparison table, showing two other TUI clients and Element Web:

| | iamb | [gomuks] | [weechat-matrix] | Element Web/Desktop | | --------------------------------------- | :----------------- | :----------------: | :----------------: | :-----------------: | | Room directory | :x: ([#14]) | :x: | :heavycheckmark: | :heavycheckmark: | | Room tag showing | :x: ([#15]) | :heavycheckmark: | :x: | :heavycheckmark: | | Room tag editing | :x: ([#15]) | :heavycheckmark: | :x: | :heavycheckmark: | | Search joined rooms | :x: ([#16]) | :heavycheckmark: | :x: | :heavycheckmark: | | Room user list | :heavycheckmark: | :heavycheckmark: | :heavycheckmark: | :heavycheckmark: | | Display Room Description | :heavycheckmark: | :heavycheckmark: | :heavycheckmark: | :heavycheckmark: | | Edit Room Description | :heavycheckmark: | :x: | :heavycheckmark: | :heavycheckmark: | | Highlights | :x: ([#8]) | :heavycheckmark: | :heavycheckmark: | :heavycheckmark: | | Pushrules | :x: | :heavycheckmark: | :x: | :heavycheckmark: | | Send read markers | :x: ([#11]) | :heavycheckmark: | :heavycheckmark: | :heavycheckmark: | | Display read markers | :x: ([#11]) | :x: | :x: | :heavycheckmark: | | Sending Invites | :x: ([#7]) | :heavycheckmark: | :heavycheckmark: | :heavycheckmark: | | Accepting Invites | :x: ([#7]) | :heavycheckmark: | :heavycheckmark: | :heavycheckmark: | | Typing Notification | :heavycheckmark: | :heavycheckmark: | :heavycheckmark: | :heavycheckmark: | | E2E | :heavycheckmark: | :heavycheckmark: | :heavycheckmark: | :heavycheckmark: | | Replies | :x: ([#3]) | :heavycheckmark: | :x: | :heavycheckmark: | | Attachment uploading | :x: ([#13]) | :x: | :heavycheckmark: | :heavycheckmark: | | Attachment downloading | :x: ([#13]) | :heavycheckmark: | :heavycheckmark: | :heavycheckmark: | | Send stickers | :x: | :x: | :x: | :heavycheckmark: | | Send formatted messages (markdown) | :x: ([#10]) | :heavycheckmark: | :heavycheckmark: | :heavycheckmark: | | Rich Text Editor for formatted messages | :x: | :x: | :x: | :heavycheckmark: | | Display formatted messages | :x: ([#10]) | :heavycheckmark: | :heavycheckmark: | :heavycheckmark: | | Redacting | :x: ([#5]) | :heavycheckmark: | :heavycheckmark: | :heavycheckmark: | | Multiple Matrix Accounts | :heavycheckmark: | :x: | :heavycheckmark: | :x: | | New user registration | :x: | :x: | :x: | :heavycheckmark: | | VOIP | :x: | :x: | :x: | :heavycheckmark: | | Reactions | :x: ([#2]) | :heavycheckmark: | :x: | :heavycheckmark: | | Message editing | :x: ([#4]) | :heavycheckmark: | :x: | :heavycheckmark: | | Room upgrades | :x: | :heavycheckmark: | :x: | :heavycheckmark: | | Localisations | :x: | 1 | :x: | 44 | | SSO Support | :x: | :heavycheckmark: | :heavycheckmark: | :heavycheckmark: |

License

iamb is released under the [Apache License, Version 2.0].