alot vs Matcha
alot: Terminal mail reader written in Python that works on a local notmuch database, with tag-based search and threads.
Matcha: Terminal email client written in Go with the Bubble Tea TUI library, with IMAP, JMAP and POP3 support.
Differences
- Only alot has built-in notmuch.
- Only Matcha has built-in IMAP, POP3, SMTP and JMAP.
- On Windows, alot runs through WSL and Matcha runs natively.
- On BSD, alot runs natively and Matcha builds from source.
- Matcha has calendar support; alot does not.
- Matcha has S/MIME; alot does not.
- Matcha has OAuth2 sign-in; alot does not.
- alot is written in Python; Matcha in Go.
- Configuration: alot uses INI-style config file plus optional Python hooks, and Matcha uses ~/.config/matcha/config.json plus in-app settings.
Side by side
| alot | Matcha | |
|---|---|---|
| Interface | Full-screen terminal interface | Full-screen terminal interface |
| Language | Python | Go |
| License | GPL 3.0 or later | MIT |
| Latest version | 0.12 | v1.0.1 |
| Linux | Native | Native |
| macOS | Native | Native |
| Windows | Through WSL | Native |
| BSD | Native | Build from source |
| Android | No | No |
| IMAP | Through a separate tool | Yes |
| POP3 | Through a separate tool | Yes |
| SMTP | Through a separate tool | Yes |
| JMAP | No | Yes |
| Maildir | Yes | Yes |
| mbox | No | No |
| notmuch | Yes | No |
| OpenPGP | Yes | Yes |
| S/MIME | No | Yes |
| OAuth2 sign-in | No | Yes |
| Threads | Yes | Yes |
| Search | notmuch queries | built-in search and filter |
| HTML mail | via mailcap, e.g. w3m -dump | built-in rendering, with inline images in supported terminals |
| Mouse | Yes | Yes |
| Multiple accounts | Yes | Yes |
| Offline use | always; reads a local notmuch database | local cache of message lists and bodies |
| Calendar | No | shows .ics invites and sends RSVP replies |
| Contacts | via an external lookup command such as abook, khard or notmuch address | address book built from sent and received mail |
| Vim-style keys | Yes | Yes |
| Configuration | INI-style config file plus optional Python hooks | ~/.config/matcha/config.json plus in-app settings |
Which to choose
Choose alot for
- Tag-based searches through notmuch instead of folders
- Full PGP/MIME signing and encryption
- Python hooks for custom behavior and formatting
Watch out for
- Needs separate tools to fetch mail (mbsync) and send it (msmtp)
- No direct IMAP, POP3 or SMTP support
- No S/MIME support
Choose Matcha for
- Supports IMAP, JMAP, POP3 and Maildir in one client
- PGP (including YubiKey) and S/MIME signing and encryption
- Prebuilt packages for Linux (Snap, Flatpak), macOS (Homebrew tap) and Windows (winget)
Watch out for
- Young project; v1.0 shipped only after a long series of 0.x releases
- JSON config is less readable to hand-edit than muttrc-style files
- Binary name clashes with an unrelated tool also called matcha
Questions
What is the difference between alot and Matcha?
Only alot has built-in notmuch. Only Matcha has built-in IMAP, POP3, SMTP and JMAP. On Windows, alot runs through WSL and Matcha runs natively.
Which runs on Windows, alot or Matcha?
On Windows, alot runs through WSL. On Windows, Matcha runs natively.
See also: alot alternatives, Matcha alternatives.