Last Updated on: 22nd February 2020, 03:43 pm
Subcategory: Email Clients
Platform: BSD, Linux, OS X
Programing language: C, Lips
First release: April 5, 2010
Notmuch – a fast, global-search and tag-based email system to use within your text editor or in a terminal. Notmuch is a system for indexing, searching, reading, and tagging large collections of email messages in maildir or mh format. It uses the Xapian library to provide fast, full-text search with a very convenient search syntax.
“Not much mail” is what Notmuch thinks about your email collection. Even if you receive 12000 messages per month or have on the order of millions of messages that you’ve been saving for decades. Regardless, Notmuch will be able to quickly search all of it. It’s just plain not much mail.
“Not much mail” is also what you should have in your inbox at any time. Notmuch gives you what you need, (tags and fast search), so that you can keep your inbox tamed and focus on what really matters in your life, (which is surely not email).
Notmuch is an answer to Sup. Sup is a very good email program written by William Morgan (and others) and is the direct inspiration for Notmuch. Notmuch began as an effort to rewrite performance-critical pieces of Sup in C rather than Ruby. From there, it grew into a separate project. One significant contribution Notmuch makes compared to Sup is the separation of the indexer/searcher from the user interface. (Notmuch provides a library interface so that its indexing/searching/tagging features can be integrated into any email program.)
Notmuch is not much of an email program. It doesn’t receive messages (no POP or IMAP support). It doesn’t send messages (no mail composer, no network code at all). And for what it does do (email search) that work is provided by an external library, Xapian. So if Notmuch provides no user interface and Xapian does all the heavy lifting, then what’s left here? Not much.
Notmuch ships with a powerful set of command-line tools, an email client for Emacs, another client for vim, and a Mutt integration script.
The project developer is Carl Worth (and other contributors).