Hugo Hacker News

Show HN: EmailEngine, open source REST interface to read and send email messages

fullstackjob 2021-08-19 03:20:57 +0000 UTC [ - ]

I started to use it for a sideproject a month ago and it works like a charme. Thanks for that

TheSpiciestDev 2021-08-18 02:37:24 +0000 UTC [ - ]

Over the past few years I've searched for something like this, here and there, thinking I wasn't using the right search terms and then giving up. I'll certainly give this a try!

Out of curiosity, are there any other comparable projects you know of? I wondering what I had to have searched for in the past hah

andris9 2021-08-18 04:51:46 +0000 UTC [ - ]

Only project I know is the Close.io fork of open source Nylas Engine (the original project was discontinued years ago) https://github.com/closeio/sync-engine

anilgulecha 2021-08-18 07:30:12 +0000 UTC [ - ]

I thought jmap exactly that (and standardized). Is there something that this does differently?

link: jmap.io

andris9 2021-08-18 10:24:52 +0000 UTC [ - ]

JMAP is a server protocol, so that the account's email server should provide JMAP endpoint instead of (or in addition to) IMAP, SMTP or ActiveSync. JMAP has almost no support at all, so if you are connecting to an email server there is a great chance that the server supports IMAP, fewer servers support Exchange ActiveSync and almost no server (except Fastmail and maybe some others) support JMAP.

EmailEngine on the other hand is not an email server but more like a reverse proxy, it takes REST commands from the client and sends IMAP/SMTP commands to the account's email server. So for the email server it looks like that the client is speaking IMAP/SMTP and for the client it seems that the server is speaking REST/JSON.

Additionally EmailEngine performs tasks that are hard to do when dealing with a regular IMAP server. For example it tracks changes on the account, so if something is added or deleted, then EmailEngine sends a webhook notification for it.

If you are interacting with an IMAP server directly then usually you see that a folder has fewer emails stored in it than during the previous check but there is no indication which messages were actually deleted.