Command-line interface for email management
The project is under active development. Do not use in production before the
v1.0.0
(see the roadmap).
Bringing emails to the terminal is a pain. First, because they are sensitive data. Secondly, the existing TUIs (Mutt, NeoMutt, Alpine, aercβ¦) are really hard to configure. They require time and patience.
The aim of Himalaya is to extract the email logic into a simple (yet solid) CLI API that can be used directly from the terminal, from scripts, from UIs⦠Possibilities are endless!
curl -sSL https://raw.githubusercontent.com/soywod/himalaya/master/install.sh | PREFIX=~/.local sh
See the wiki for other installation methods.
# ~/.config/himalaya/config.toml
name = "Your full name"
downloads-dir = "/abs/path/to/downloads"
signature = """
Cordialement,
Regards,
"""
[gmail]
default = true
email = "[email protected]"
imap-host = "imap.gmail.com"
imap-port = 993
imap-login = "[email protected]"
imap-passwd-cmd = "pass show gmail"
smtp-host = "smtp.gmail.com"
smtp-port = 465
smtp-login = "[email protected]"
smtp-passwd-cmd = "security find-internet-password -gs gmail -w"
See the wiki for all the options.
- Mailbox listing
- Email listing and filtering
- Email composition based on
$EDITOR
- Email manipulation (copy/move/delete)
- Multi-accounting
- IDLE mode for real-time notifications
- Vim plugin
- Completions for bash/zsh/fish
- JSON output
- β¦
See the wiki for all the features.
- IMAP RFC3501
- Iris, the himalaya predecessor
- isync, an email synchronizer for offline usage
- NeoMutt, an email terminal user interface
- Alpine, an other email terminal user interface
- mutt-wizard, a tool over NeoMutt and isync
- rust-imap, a rust IMAP lib