My ideal E-Mail app
Any of you who have used GMail will probably agree that it has one of the most convenient UIs for managing mail, period. Not just on the web, but it actually has features I'd love to have on my desktop.
And now that AOL has cancelled its Usenet feeds only a couple months after the Panic guys released their Unison Usenet Newsreader, I remembered an old idea of mine (vaguely inspired by half a dozen mail apps, including a huge experimental one by IBM). So, I thought I'd offer my wishlist for how Unison could be made into a really cool E-Mail client, feed- and newsreader. Usenet news and E-Mail share a number of protocols, so the Panic guys could reuse a lot of their code.
I've been stuck with Eudora for the last years, simply because it was the only app that could cope with my huge mail archive. Apple Mail always took ages to save, the Microsoft stuff always crashed (taking my messages into Nirvana), and I don't even remember why Mailsmith annoyed me... So, if I'm not mentioning anything here, I probably want it to behave like Eudora, but the following features would be in my ideal E-Mail client:
So, if anyone here finds themselves writing an e-mail app and adding these features, or if any of you knows an e-mail app that already does this, let me know. But note that so far the main point for me was always that the apps couldn't cope with all my e-mails. Unless the mail app provides some of the cool new features above *in addition to* what I have in Eudora right now, I'll be kind of reluctant to risk losing messages again.
- Per-folder filters (kinda like Mailsmith) with the added ability to add my own headers to messages (so I can fix the "Reply-to:" on Apple's mailing lists), and so I can have certain filters apply to all mailboxes and others only to a subset.
- Support for nested folders for messages (kinda like Eudora's "mailboxes", which can be put in other "folders")
- Live searches that can be saved, so I can have a message listed in several windows if I want to. In that case, folders would probably just be saved searches and keywords attached to a message. Kind of like GMail's search.
Alternatively, it could support something like Aliases of messages. Then we'd only need a regular "Eudora-style" search, and I could have filters that create aliases in other folders and thus create "other views". Maybe there should also be an option to delete all aliases when the original of a message is deleted.
- Robust, and able to cope with lots of messages (I occasionally exceed Eudora's 30000 message limit on a few mailboxes [=folders] - I like to archive my mailing lists locally). If there's a message number limit per folder, I'd want it to automatically archive older messages into a new folder whenever I reach the limit.
- Labels (like Finder, or like Eudora) for messages. Bonus points if I can create additional labels "per-folder", not just globally. E.g. in the Cocoa-Dev mailing list red would be "from an Apple employee", while in the GUI list it'd flag all messages from Jef Raskin. Of course, it shouldn't just be a color, but also a name.
- Expiration date-triggered filters - I wanna be able to e.g. make folders delete all messages older than 30 days automatically, or delete them *except* if they have any/a specific label set, etc. (e.g. so it'll keep all messages I deem interesting, but delete the rest)
- Alternate "message sources", ideally as plugins. It would be cool if e.g. I could write a plugin that pulls Newsgroup messages into that mail app, or postings from RSS feeds, or even write a screen scraping plugin that lets me read a web forum like an e-mail mailing list. Bonus points if some plugins like that already came with it. In the case of Unison, I could see Usenet built-in at least. phpBB and some other popular web discussion boards shouldn't be too hard either.
- "To do" lists. I guess this could also be done by creating a new folder in which I (or a filter) would put aliases of messages to be handled, with an (optional) expiration date, reminder messages (or maybe just an easy way to create an appointment in iCal for them, which would do the reminding), you get the idea...
Bonus points if I can also add messages of my own (i.e. just text filesor so) to the "to do list" for other items. Anything that keeps me fromneeding several lists. Maybe that'd even be a separate "to do" app that easily integrates all sorts of items with "quick links" to open them...
- Spam filtering. Obviously.
- It should recognize VCards and GPG signatures and hide them under a small icon (instead of having that "junk" in the message or accumulating dozens of attachments). Of course, if it can add VCards to Address Book automagically, validate GPG signatures etc., that'd be even cooler.
- Support several accounts, but let me aggregate all messages in one folder if I wanted to.
- Support "weekday colors" on messages, or "age colors", so I can see what messages arrived last week, and which yesterday, when I look at a folder. The way I see it, it'd simply be the background color for a message in the list, where all messages from the same day share the same color, and a change in color shows me I got that a day earlier. Of course, this should still support "alternating row colors" like Mail.app has them, maybe by lightening/darkening that color a bit. Lines between messages like in Eudora don't really work.
- Multi-window support. I like having dozens of windows, because I can arrange them how I want, and I can make certain windows full-size but overlapping. And, like Eudora, it should remember what windows were open when the app was quit.
Of course, these are just suggestions. I tried to give the rationale behind most of my ideas, and as long as I can achieve my goals, I don't care whether GPG signatures end up as an icon, or as a color change in the window border, or as a menu item that is suddenly available... just get the fingerprint out of my message window :-)