Skip to content

Terminal UI

RustMail includes a built-in terminal UI (TUI) that connects to a running RustMail instance. It provides a full email browser in your terminal with real-time updates via WebSocket.

RustMail TUI

Usage

sh
rustmail tui

Connect to a specific host and port:

sh
rustmail tui --host 192.168.1.10 --port 8025

INFO

The tui subcommand requires the tui feature flag. Pre-built release binaries include it by default. Docker images do not (headless use case).

Options

FlagDefaultDescription
--host127.0.0.1RustMail server host to connect to
--port8025RustMail HTTP port

Keymaps

Message List

KeyAction
j / DownSelect next message
k / UpSelect previous message
Enter / l / RightOpen selected message
TabSwitch focus between list and preview
/Search
rToggle read/unread
sToggle starred
dDelete selected message
DDelete all messages (with confirmation)
RView raw message
gJump to first message
GJump to last message
]Next page
[Previous page
?Help
qQuit

Message Preview

KeyAction
j / DownScroll down
k / UpScroll up
Esc / h / Left / TabBack to list
1Text tab
2Headers tab
3Raw tab
rToggle read/unread
sToggle starred
dDelete message
RView full raw source
qQuit

Neovim Integration

The TUI is also available as a Neovim plugin with floating windows and custom keymaps. See rustmail.nvim.

Released under the MIT / Apache 2.0 License.