Open source · Rust · Terminal-native

Email at
terminal speed.

TMail brings a familiar inbox into the terminal — optimized for keyboards, built in Rust, and powered by Himalaya.

macOS primary Linux supported Windows out of scope
tmail — inbox
09:41
/ Search mail1–6
Maya ChenDesign review · Final pass before Friday
GitHub[tmail] CI passed on master
SamRe: terminal mail clients
Linear3 updates in TMail
meDraft: v1 release notes
Rust WeeklyThis week in Rust
jk move openc compose? keys
KEYBOARD FIRSTFAST STARTUPTHEMESOFFLINE CACHEIMAP + SMTPKEYBOARD FIRSTFAST STARTUPTHEMESOFFLINE CACHEIMAP + SMTP
01 — WHY TMAIL

Built for people who already live in a terminal.

No browser tab. No heavyweight desktop shell. Just your inbox, your keyboard, and the tools you already use.

02

Gmail-inspired

A familiar mailbox layout translated into a focused terminal interface.

03

Powered by Himalaya

Mail protocols, accounts and credentials are handled by the battle-tested Himalaya CLI.

04

Make it yours

Switch themes at runtime, customize color tokens, remap keys, or run without color entirely.

05
mailbox listingcached
message pagescached
opened messagescached

Instant where it matters

A small on-disk cache keeps previously loaded mail ready while refreshes happen in the background.

06

Use your editor

Compose with the built-in editor, $EDITOR, or a command such as nvim.

02 — INSTALL

Two commands.
Then check your mail.

Homebrew installs TMail and Himalaya together. TMail can guide you through account setup on first run.

Terminal
$ brew tap jodaka/tap https://github.com/jodaka/homebrew-tap
$ brew install jodaka/tap/tmail
Then runtmail
03 — CONFIGURE

Sensible defaults.
Precise control.

TMail and Himalaya share one TOML config. Tune the parts you care about and leave the rest alone.

# ~/.config/himalaya/config.toml
[tmail]
mouse = true
notifications = "on"
view_mode = "compact"

[tmail.theme]
name = "default"
accent = "#8ab4f8"

[tmail.composer]
editor = "$EDITOR"
t

Mail without
leaving the terminal.

Open source. Built in Rust. Ready for your inbox.