meli vs mu4e
meli: Terminal email client written in Rust with IMAP, JMAP, notmuch, Maildir, mbox and NNTP backends and TOML configuration.
mu4e: Email client that runs inside GNU Emacs, built on the mu Maildir indexer and search tool.
Differences
- meli is a full-screen terminal client; mu4e is a mail client that runs inside Emacs.
- Only meli has built-in IMAP, JMAP, mbox and notmuch.
- On Windows, meli is not available and mu4e runs through WSL.
- On Android, meli is not available and mu4e runs through Termux.
- mu4e has calendar support; meli does not.
- mu4e has S/MIME; meli does not.
- meli has Vim-style keys; mu4e does not.
- meli is written in Rust; mu4e in Emacs Lisp (mu4e), C++ (mu).
- Configuration: meli uses TOML file (config.toml), and mu4e uses Emacs Lisp in init.el.
Side by side
| meli | mu4e | |
|---|---|---|
| Interface | Full-screen terminal interface | Runs inside Emacs |
| Language | Rust | Emacs Lisp (mu4e), C++ (mu) |
| License | EUPL 1.2 or GPL 3.0 or later | GPL 3.0 or later |
| Latest version | 0.8.13 | 1.14.3 |
| Linux | Native | Native |
| macOS | Native | Native |
| Windows | No | Through WSL |
| BSD | Native | Native |
| Android | No | Through Termux |
| IMAP | Yes | Through a separate tool |
| POP3 | No | Through a separate tool |
| SMTP | Yes | Yes |
| JMAP | Yes | No |
| Maildir | Yes | Yes |
| mbox | Yes | No |
| notmuch | Yes | No |
| OpenPGP | Yes | Yes |
| S/MIME | No | via Emacs MML |
| OAuth2 sign-in | via script | via script |
| Threads | Yes | Yes |
| Search | built-in; sqlite3 index by default; notmuch queries | Xapian full-text index with mu query syntax |
| HTML mail | via filter command, w3m by default | built-in, rendered with the Emacs shr library |
| Mouse | Yes | Yes |
| Multiple accounts | Yes | via contexts |
| Offline use | IMAP header cache in sqlite3; full offline use with Maildir and mbsync | full; reads a local Maildir synced by mbsync or OfflineIMAP |
| Calendar | No | replies to invitations with mu4e-icalendar |
| Contacts | built-in contact list; reads vCard and mutt alias files | address completion from indexed mail |
| Vim-style keys | Yes | No |
| Configuration | TOML file (config.toml) | Emacs Lisp in init.el |
Which to choose
Choose meli for
- Supports JMAP, notmuch, IMAP, Maildir and NNTP in one client
- Single TOML file with per-account and per-mailbox overrides
- Embedded terminal runs the editor inside the compose view
Watch out for
- No POP3 or S/MIME support
- mbox support is read-only
- No Windows or Termux packages
Choose mu4e for
- Full-text search over all local mail through mu's Xapian index.
- Works offline, since all mail lives in a local Maildir.
- Uses Emacs message mode, so PGP/MIME, S/MIME and Org mode links are available.
Watch out for
- No built-in IMAP; needs mbsync or a similar sync tool, so setup spans several config files.
- Requires Emacs and some Emacs Lisp to configure.
- No native Windows build, and Arch packages it only in the AUR.
Questions
What is the difference between meli and mu4e?
meli is a full-screen terminal client; mu4e is a mail client that runs inside Emacs. Only meli has built-in IMAP, JMAP, mbox and notmuch. On Windows, meli is not available and mu4e runs through WSL.
Which runs on Windows, meli or mu4e?
On Windows, meli is not available. On Windows, mu4e runs through WSL.
See also: meli alternatives, mu4e alternatives.