2 ms·
Nylas N1 requires a custom server (Nylas Sync Engine) to do notifications. Why? Their FAQ is extremely vague about it. Apparently it suffers the same performanc
by ultramancool 11y ago
Nylas N1 requires a custom server (Nylas Sync Engine) to do notifications. Why? Their FAQ is extremely vague about it. Apparently it suffers the same performance issues as plain IMAP for search. It seems this might be to support their Electron based UI, which seems... bloated to say the least.
- tjohns 11y agoThe Electron UI is all local. I believe the sync engine translates between IMAP and a custom JSON protocol they've created. I'm not sure what the performance difference is, but looking at the API docs, it looks a lot nicer to work with than IMAP: https://www.nylas.com/docs/ https://www.nylas.com/docs/ It also seems to more accurately represent modern semantics for working with email. For example, it allows using OAuth for authentication, and it has separate fields for folders and labels, depending on the backing email service. (And unlike IMAP, the labels field is actually useful.) You can also download a transaction log to make sync faster, which I don't think has an analog in IMAP. Subjectively, I've found the performance to be rather snappy in most cases. (You can also run a local client of the sync engine, if you don't want to trust their hosted copy: https://github.com/nylas/sync-engine https://github.com/nylas/sync-engine)
- grinich 11y agoHi-- I work at Nylas. Happy to jump in here :) The sync engine handles all the compatibility or dozens of IMAP and Exchange servers, and uses a variety of heuristics for real-time notifications. It also does the heavy-lifting for the huge amount of data in most people's mailbox. The N1 app can cache your entire archive in about 10% of the disk space required if you also download all unprocessed headers+attachments. Right now our search implementation just sends a proxy request to the IMAP search, so you'll get the same performance as Gmail web, Mac Mail, etc. It's not ideal. We're working on our own faster search system, but it's tough to build a huge distributed search cluster that handles tens of terabytes. (And is growing quickly!) If anyone here wants to work on that, we're also hiring. ;) N1 is built on Electron, which under the hood is Chromium+NodeJS so that comes with a bit of weight. But the app itself is pretty manageable. You can check out the source here: https://github.com/nylas/n1 https://github.com/nylas/n1