If you haven't seen it, the code for N1 and the sync engine are both open source available on our GitHub: https://github.com/nylas
If you haven't seen it, the code for N1 and the sync engine are both open source available on our GitHub: https://github.com/nylas
I've got a google account with a few gigs of emails, but I don't need emails from 2004 on a daily basis. It would be awesome if it would only download (and have available) files from the last year or so.
I never saw a reply to that. Do you understand that criticism? Do you understand what they might've been talking about? Looking at GitHub I guess they were talking about https://github.com/nylas/sync-engine#nylas-api-service and the need to pass the id via basic auth/as username.
So - the threads below seem to complain that the sync server has no authentication schema whatsoever (seems to be true after skimming GH/the link above) and - this is what I'm really curious about - even claims that you wouldn't accept free contributions to implement that.
What I'm trying to ask, I guess:
1) Why no authentication for the sync server?
2) Are you really against any such contributions, if you don't intend to build those yourself?
3) Do you have any recipes/ideas/reports from happy users how you'd secure the sync-server in its current state, in a "let's play" deployment?
1: https://news.ycombinator.com/item?id=11061717 2: https://news.ycombinator.com/item?id=11122802
The second is about how to do API authentication, i.e. how API requests are secured. The sync engine just provides all API data as a service, namespaces by account ID. Developers need to "secure" this by either running it behind a VPN, adding a proxy layer like Nginx, wrapping API calls in their own application layer, or dozens of other solutions. Everyone does this differently so it doesn't make sense to include as part of the default sync engine.
The simplest version is probably to just block access to `/accounts` for external users and treat those account ids as authentication secrets. (They're just opaque long strings.)
We're not against contributions, and nobody has actually built an auth system and submitted a PR.
We also have keyboard shortcuts, fully customizable in the preferences window.
Another question - this one only by curiosity - are you ditching coffeescript for es6?
Edit - the answer is here: https://github.com/nylas/N1/issues/9