Mail archive with Apache CouchDB / IBM Cloudant - Part 1
Like it or not, your eMail turned into the archive of your (working) past. One of the challenges with this archive is the tendency to switch eMail systems from time to time. IBM Notes won't open your Outlook PSD file, nor would Outlook open your Notes NSF database.
So a vendor and format neutral solution is required. The obvious choice here is MIME, which is for one, the format any message crossing the internet is encoded in, secondly all eMail applications support MIME - to some extend. Just storing each message into a directory structure isn't a good solution either, since navigation and search leave much to be desired, so some more work is needed.
Of course open standards tend to be ambiguous enough to allow different interpretation or the implementation of propriety extension. MIME is no exception. You can send any type of attachments, including malicious payloads, which are encoded and outside the MIME standard.
So looking at an archival solution here is my list of requirements:
- Needs to be able to store MIME messages
- Mime headers an other id fields need to be captured in database fields
- Need to be able to sync on different locations for backup/availability
- Need to be able to provide navigation access by sorted, filtered lists
- Interface to do some analytics
- Full text search
- HTML and text content should be displayed directly, all other types should be listed as attachments
- Inline images (href / src in the html content pointing to other mime parts) need to be dealt with
- Import capabilities
- Source code for inspection available, OpenSource if possible