A Matrix client for Vim addicts (personal fork with some random tweaks) https://iamb.chat
Find a file
2024-03-21 05:13:47 +00:00
.github GitHub workflow should use --locked to avoid broken Cargo.lock (#219) 2024-03-20 15:29:04 +00:00
docs Add example of mapping "V" to toggle message selection mode (#195) 2024-03-09 22:57:35 -08:00
src Ignore key releases on platforms that support it (#220) 2024-03-21 05:13:47 +00:00
.envrc Enable direnv for Nix flakes (#183) 2023-12-19 00:53:17 +00:00
.gitattributes Want a Matrix client that uses Vim keybindings (#1) 2022-12-29 18:00:59 -08:00
.gitignore Enable direnv for Nix flakes (#183) 2023-12-19 00:53:17 +00:00
.rustfmt.toml Want a Matrix client that uses Vim keybindings (#1) 2022-12-29 18:00:59 -08:00
build.rs Release v0.0.8 (fix cargo publish issues) (#134) 2023-07-07 23:21:47 -07:00
Cargo.lock GitHub workflow should use --locked to avoid broken Cargo.lock (#219) 2024-03-20 15:29:04 +00:00
Cargo.toml Support linking against system OpenSSL (#218) 2024-03-19 21:55:14 -07:00
CONTRIBUTING.md Support sending and displaying typing notifications (#9) 2023-01-03 13:57:28 -08:00
flake.lock Nix flake updates (#214) 2024-03-08 20:03:55 -08:00
flake.nix Add support for custom key macros (#217) 2024-03-10 06:49:40 +00:00
iamb.desktop feat: desktop file for GUI environment launchers (#178) 2023-11-14 12:19:54 -08:00
LICENSE Initial commit 2021-07-02 23:22:37 -07:00
PACKAGING.md Support linking against system OpenSSL (#218) 2024-03-19 21:55:14 -07:00
README.md Update to matrix-sdk@0.7.1 (#200) 2024-03-02 23:00:29 +00:00

iamb

Build Status License: Apache 2.0 #iamb:0x.badd.cafe Latest Version 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.

Example Usage

Documentation

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

Installation

Install Rust (1.70.0 or above) and Cargo, and then run:

cargo install --locked iamb

NetBSD

On NetBSD a package is available from the official repositories. To install it simply run:

pkgin install iamb

Arch Linux

On Arch Linux a package is available in the Arch User Repositories (AUR). To install it simply run with your favorite AUR helper:

paru iamb-git

openSUSE Tumbleweed

On openSUSE Tumbleweed a package is available from openSUSE Build Service (OBS). To install just use OBS Package Installer:

opi iamb

Nix / NixOS (flake)

nix profile install "github:ulyssa/iamb"

Snap

A snap for Linux distributions which support the packaging system.

snap install iamb

Configuration

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

{
    "profiles": {
        "example.com": {
            "user_id": "@user:example.com"
        }
    }
}

If you homeserver is located on a different domain than the server part of the user_id and you don't have a /.well-known entry, then you can explicitly specify the homeserver URL to use:

{
    "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 (#14) ✔️ ✔️
Room tag showing ✔️ ✔️ ✔️
Room tag editing ✔️ ✔️ ✔️
Search joined rooms (#16) ✔️ ✔️
Room user list ✔️ ✔️ ✔️ ✔️
Display Room Description ✔️ ✔️ ✔️ ✔️
Edit Room Description ✔️ ✔️ ✔️
Highlights (#8) ✔️ ✔️ ✔️
Pushrules ✔️ ✔️
Send read markers ✔️ ✔️ ✔️ ✔️
Display read markers ✔️ ✔️
Sending Invites ✔️ ✔️ ✔️ ✔️
Accepting Invites ✔️ ✔️ ✔️ ✔️
Typing Notification ✔️ ✔️ ✔️ ✔️
E2E ✔️ ✔️ ✔️ ✔️
Replies ✔️ ✔️ ✔️
Attachment uploading ✔️ ✔️ ✔️
Attachment downloading ✔️ ✔️ ✔️ ✔️
Send stickers ✔️
Send formatted messages (markdown) ✔️ ✔️ ✔️ ✔️
Rich Text Editor for formatted messages ✔️
Display formatted messages ✔️ ✔️ ✔️ ✔️
Redacting ✔️ ✔️ ✔️ ✔️
Multiple Matrix Accounts ✔️ ✔️
New user registration ✔️
VOIP ✔️
Reactions ✔️ ✔️ ✔️
Message editing ✔️ ✔️ ✔️
Room upgrades (#41) ✔️ ✔️
Localisations 1 44
SSO Support ✔️ ✔️ ✔️ ✔️
Image preview ✔️ ✔️

License

iamb is released under the Apache License, Version 2.0.