2021-07-02 23:22:37 -07:00
|
|
|
# iamb
|
|
|
|
|
|
|
|
## About
|
|
|
|
|
2022-12-29 18:00:59 -08:00
|
|
|
`iamb` is a Matrix client for the terminal that uses Vim keybindings.
|
2021-07-02 23:22:37 -07:00
|
|
|
|
2022-12-29 18:00:59 -08:00
|
|
|
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.
|
2021-07-02 23:22:37 -07:00
|
|
|
|
|
|
|
## Installation
|
|
|
|
|
|
|
|
Install Rust and Cargo, and then run:
|
|
|
|
|
|
|
|
```
|
|
|
|
cargo install iamb
|
|
|
|
```
|
|
|
|
|
2022-12-29 18:00:59 -08:00
|
|
|
## Configuration
|
|
|
|
|
|
|
|
You can create a basic configuration in `$CONFIG_DIR/iamb/config.json` that looks like:
|
|
|
|
|
|
|
|
```json
|
|
|
|
{
|
|
|
|
"profiles": {
|
|
|
|
"example.com": {
|
|
|
|
"url": "https://example.com",
|
2023-01-03 13:57:28 -08:00
|
|
|
"user_id": "@user:example.com"
|
2022-12-29 18:00:59 -08:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
```
|
|
|
|
|
2022-12-29 20:25:38 -08:00
|
|
|
## 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][client-comparison-matrix], showing
|
|
|
|
two other TUI clients and Element Web:
|
|
|
|
|
|
|
|
| | iamb | [gomuks] | [weechat-matrix] | Element Web/Desktop |
|
|
|
|
| --------------------------------------- | :----------------- | :----------------: | :----------------: | :-----------------: |
|
|
|
|
| Room directory | :x: ([#14]) | :x: | :heavy_check_mark: | :heavy_check_mark: |
|
|
|
|
| Room tag showing | :x: ([#15]) | :heavy_check_mark: | :x: | :heavy_check_mark: |
|
|
|
|
| Room tag editing | :x: ([#15]) | :heavy_check_mark: | :x: | :heavy_check_mark: |
|
|
|
|
| Search joined rooms | :x: ([#16]) | :heavy_check_mark: | :x: | :heavy_check_mark: |
|
2023-01-04 12:51:33 -08:00
|
|
|
| Room user list | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
|
2023-01-05 18:12:25 -08:00
|
|
|
| Display Room Description | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
|
|
|
|
| Edit Room Description | :heavy_check_mark: | :x: | :heavy_check_mark: | :heavy_check_mark: |
|
2022-12-29 20:25:38 -08:00
|
|
|
| Highlights | :x: ([#8]) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
|
|
|
|
| Pushrules | :x: | :heavy_check_mark: | :x: | :heavy_check_mark: |
|
|
|
|
| Send read markers | :x: ([#11]) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
|
|
|
|
| Display read markers | :x: ([#11]) | :x: | :x: | :heavy_check_mark: |
|
|
|
|
| Sending Invites | :x: ([#7]) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
|
|
|
|
| Accepting Invites | :x: ([#7]) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
|
2023-01-03 13:57:28 -08:00
|
|
|
| Typing Notification | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
|
2022-12-29 20:25:38 -08:00
|
|
|
| E2E | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
|
|
|
|
| Replies | :x: ([#3]) | :heavy_check_mark: | :x: | :heavy_check_mark: |
|
|
|
|
| Attachment uploading | :x: ([#13]) | :x: | :heavy_check_mark: | :heavy_check_mark: |
|
|
|
|
| Attachment downloading | :x: ([#13]) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
|
|
|
|
| Send stickers | :x: | :x: | :x: | :heavy_check_mark: |
|
|
|
|
| Send formatted messages (markdown) | :x: ([#10]) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
|
|
|
|
| Rich Text Editor for formatted messages | :x: | :x: | :x: | :heavy_check_mark: |
|
|
|
|
| Display formatted messages | :x: ([#10]) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
|
|
|
|
| Redacting | :x: ([#5]) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
|
|
|
|
| Multiple Matrix Accounts | :heavy_check_mark: | :x: | :heavy_check_mark: | :x: |
|
|
|
|
| New user registration | :x: | :x: | :x: | :heavy_check_mark: |
|
|
|
|
| VOIP | :x: | :x: | :x: | :heavy_check_mark: |
|
|
|
|
| Reactions | :x: ([#2]) | :heavy_check_mark: | :x: | :heavy_check_mark: |
|
|
|
|
| Message editing | :x: ([#4]) | :heavy_check_mark: | :x: | :heavy_check_mark: |
|
|
|
|
| Room upgrades | :x: | :heavy_check_mark: | :x: | :heavy_check_mark: |
|
|
|
|
| Localisations | :x: | 1 | :x: | 44 |
|
|
|
|
| SSO Support | :x: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
|
|
|
|
|
2021-07-02 23:22:37 -07:00
|
|
|
## License
|
|
|
|
|
|
|
|
iamb is released under the [Apache License, Version 2.0].
|
|
|
|
|
|
|
|
[Apache License, Version 2.0]: https://github.com/ulyssa/iamb/blob/master/LICENSE
|
2022-12-29 20:25:38 -08:00
|
|
|
[client-comparison-matrix]: https://matrix.org/clients-matrix/
|
|
|
|
[gomuks]: https://github.com/tulir/gomuks
|
|
|
|
[weechat-matrix]: https://github.com/poljar/weechat-matrix
|
|
|
|
[#2]: https://github.com/ulyssa/iamb/issues/2
|
|
|
|
[#3]: https://github.com/ulyssa/iamb/issues/3
|
|
|
|
[#4]: https://github.com/ulyssa/iamb/issues/4
|
|
|
|
[#5]: https://github.com/ulyssa/iamb/issues/5
|
|
|
|
[#6]: https://github.com/ulyssa/iamb/issues/6
|
|
|
|
[#7]: https://github.com/ulyssa/iamb/issues/7
|
|
|
|
[#8]: https://github.com/ulyssa/iamb/issues/8
|
|
|
|
[#9]: https://github.com/ulyssa/iamb/issues/9
|
|
|
|
[#10]: https://github.com/ulyssa/iamb/issues/10
|
|
|
|
[#11]: https://github.com/ulyssa/iamb/issues/11
|
|
|
|
[#12]: https://github.com/ulyssa/iamb/issues/12
|
|
|
|
[#13]: https://github.com/ulyssa/iamb/issues/13
|
|
|
|
[#14]: https://github.com/ulyssa/iamb/issues/14
|
|
|
|
[#15]: https://github.com/ulyssa/iamb/issues/15
|
|
|
|
[#16]: https://github.com/ulyssa/iamb/issues/16
|