It’s all around again – the concept of the email client that doesn’t suck. I’m using Apple Mail, and I’m reasonably satisfied, but not entirely. I’m willing to throw in with other people to help this happen. At this stage, though, the scope must be established or it will fail.
To any takers that will want to build this, here are my personal goals, would I do this alone (in my equally ficticious copious free time, naturally):
- Make it fast.
- Make it open.
- Make it look pretty.
- Make it usable.
- Start with something. (I recommend Rentzsch’s project. It’s in his public redshed SVN repo, and it’s called Maillot.)
- Support IMAP.
- Support SMTP.
- If at all possible, try to support POP.
- Support SSL with any of the above.
- Build in decent HTML handling, but make it a master switch in the app to deal with Text or Text+HTML. Email is best in text, but for the millions of people that use Outlook and for which it is “email”, not “just another email client which my boss tells me I’ll have to use”, email is rich text.
- Build in hooks for processing received messages in scripts right from the start. (Spam filtering, but also other stuff.)
- Build in rules and filtering, like all other mail apps have. (If possible, make this use the hooks mentioned above – self-reliance keeps you honest.)
- Support Growl.
- Automatically decode
winmail.datfiles. - Support threads. (I prefer Apple Mail style – simple collation – but some prefer jwz-style – nested.)
- Build in the “Outlook view” (folders on extreme left, mail list on left as thin column but with multiple rows for each message, reading pane for rest).
- Build in “syntax highlighting” for quote levels.
- Make filtering the message list without doing a full-on search easy.
- Load as little as you can from the underlying data store.
- Implement smart archiving of individual folders – just show (the x most recent messages / messages from the x most recent (weeks / months / years)) in a specific folder. Make retrieving the rest blindingly simple. Disable this in the inbox.
- Integrate with the system address book and calendar.
- Make it possible to associate contacts with email accounts. (Say you’ll only ever want to send a message to this person from your job email, or your personal email. The app would prevent you from circumventing this.)
- Using a plugin system, allow automatic offshoring of old email. Continuously relocate old mail to another place. (Say, S3.) As far as possible, keep the index, but move the actual emails. (Thanks to Bob Sanders.)
- Conversely, allow redundant storage using those same plugins. (New mail? Automatic Subversion checkin.)
- Allow a Gmail-like message list view of several emails (or a whole thread) at once.
- Support stuff like PGP and other encryption right out of the box; if possible, both for sending and receiving.
Sounds like you haven’t heard of Kiwi.
By http://openid.aol.com/triplef@mac.com · 2007.07.05 21:49
Sounds like someone’s making assumptions.
I’ve heard of it. I’ve visited that site thrice today alone. I’ve also heard of Correo, the effort planning to do for Thunderbird what Camino does for Firefox.
That doesn’t preclude me from throwing around ideas. Email is nuanced – it’s entirely possible that both Kiwi and Correo are going to be incompatible with me personally.
Kiwi and Correo would be wonderful starting points for a greater “mob effort”, but I’ve read about them for quite a while now. It’s likely that whoever’s in charge have already built up a roadmap. And that’s fine, of course.
By Jesper · 2007.07.05 22:03
I think an extremely fast (NON-SPOTLIGHT) full-text search engine is important. IMAP SEARCH should also be supported of course, but most mail servers don’t keep very well indexed databases (i.e slow) so searching locally will provide faster results than the server and provide offline searching. I am aware that in order to support Spotlight you need to keep messages in separate files; I’m proposing keeping a full-text search index in addition to mbox-esq directories. CLucene (which is LGPL) may be a good choice for the full-text search library.
By ryan · 2007.07.05 23:00