7 ms·
Our team at Nylas has been incredibly lucky to build on the shoulders of the folks at GitHub and I'd just like to thank Kevin, zcbenz, Jessica, and their entire
by grinich 10y ago
Our team at Nylas has been incredibly lucky to build on the shoulders of the folks at GitHub and I'd just like to thank Kevin, zcbenz, Jessica, and their entire team. They've been awesome to work with and super supportive of this new community.
Our early prototypes of Nylas N1 were built on Angular in the browser, and then Adobe Brackets, but we couldn't really get it to a level that felt great and worked offline. It wasn't until we decided to fork Atom (the previous base of Electron) that we started breaking past the "uncanny valley" of wrapped webviews and discovered an application stack that allowed quick cross-platform deployment alongside native code modules.
After building on Electron/AtomShell for 18 months and seeing the community grow, I can definitely say there is something really special here. We've still got a lot of work to do on N1 (email is hard!) but we're confident Electron is the right platform for this type of extensible app.
A secondary reason we open sourced N1 was to serve as a reference implementation of a large Electron app. There still isn't a great resource for "best practices" when creating complex Electron apps with lots of moving parts. Now that we've hit 1.0, I think it's time to change that!
If you have a free afternoon, I definitely recommend playing around with Electron. It will likely change your outlook on the future of desktop software. :)
- t3nary 10y agoKeep up the good work on N1, it's a great app :) I also enjoyed reading parts of the source code, it's awesome that you open sourced it!
- iamcreasy 10y agoIndeed. I am always surprised by the responsiveness of this app. Even when the rest of the system has slowed down to a crawl it's never too much to open up N1.
- kuschku 10y agoWell, it still doesn’t feel native on linux. You get 2 window bars, and 2 toolbars, nested in each other. http://i.imgur.com/2C769ex.png http://i.imgur.com/2C769ex.png It might be "best practices" on Mac, maybe even on Windows, but it definitely looks out of place on Linux. Especially when compared to native Qt apps.
- axx 10y agoIn comparison to most GUI apps on Linux, this looks pretty good. It might not be perfect, but if i had to choose between no linux port, and a good-enough linux port, i'll choose the latter.
- kuschku 10y agoIt looks "good", but not, as claimed by the Nylas team, "native". Even Swing and JavaFX manage to make better looking, faster running, easier to code UI apps, which can be distributed smaller (the Java Runtime, thanks to Jigsaw, is smaller than the node+Chrome runtime of electron)
- collyw 10y agoThere isn't really a standard native look to Linux, as we have so many desktop options and related toolkits.
- tfar 10y agoThere basically is. Linux per se is just not a desktop OS, like Windows or OS X. Ubuntu has a standard UI, Debian's default install has a standard UI, Kubuntu has a standard UI, and so on.
- 0x6c6f6c 10y agoThat's even worse though. You can't ask for a universal GNU/Linux native appearance since there are Debian/Kubuntu/Ubuntu standards for UI. The list goes on and on too.
- 0x6c6f6c 10y agoThe problem with asking for a GNU/Linux standard application is there are several toolkits for developing them that stand out when not in the same base as the desktop environment. There is a single concise appearance to certain distros (e.g. Elementary), then difference of appearance in desktop environments (e.g. GNOME, KDE) and then there are the toolkits that are written completely different and use separate libraries (e.g. Qt, GTK). By asking for a "Linux native application", you would need to create forks for GTK/Qt theming at the minimum and change the appearance altogether. It's just an absurd request really. One thing Electron does not do well is per-system graphical elements. It renders the same on every system so you either have a unique application design or you're conforming more to Window, Mac, or GNU/Linux. Or doom yourself to an old stale design, which is bland enough to fit in every category, but isn't the aim of the project.
- axx 10y agoI'm going a little off-topic here, but i just found out about Nylas. What i don't understand is the Cloud integration. If i use Nylas with my IMAP account, does Nylas upload any data to your cloud? Can i use it as a basic Mail.app/Thunderbird alternative, without leaking my personal data to your cloud?
- lobster_johnson 10y agoNot the OP, but AFAIK, Nylas does store your email in their cloud. This allows the client to be thin, since it's only using the APIs and is shielded from the intricacies of dealing with mail protocols like IMAP and SMTP. It also allows Nylas to offer a single API that works across all your email. https://support.nylas.com/hc/en-us/articles/217518207-Why-does-Nylas-N1-sync-email-via-the-cloud- https://support.nylas.com/hc/en-us/articles/217518207-Why-do...
- axx 10y agoThanks!
- meesles 10y agoBuilding a larger Electron app myself, thank you SO much for opening up your code. There's a ton to be learned, like you said, about best practices with Electron. I"ve spent so much time shuffling things around and refactoring that I can appreciate a good foundation for consistent file trees.
- pikzen 10y ago>It will likely change your outlook on the future of desktop software. :) Slow, with a 100MB node runtime eating up an entire CPU, piling hacks on hacks on React on top of the DOM, being dependant on Google's will to develop V8, written in JavaScript? That sounds like a pretty damn bleak future to me.
- moondev 10y agoA whole 100MB... GASP! Meanwhile native MS Office on osx takes up almost 7GB.
- pikzen 10y ago* I meant 100MB memory footprint. Office doesn't have a 7GB footprint. * Office being a behemoth doesn't give a right to other apps to be whales. * 100MB is just the runtime. Then you've got your application running on top of that, using whatever memory you want. The C/C++ runtime is not 100MB. * Those 7GB probably include examples, layouts, whatever. Actual content. As opposed to Electron apps which are rarely more than just pretty interfaces making requests to a server. (With some high profile exceptions, like Atom, VSCode, ... Although they do send data to outside servers anyways :^)) * The Office suite is infinitely more complicated than anything done with Electron. That means features, technical debt, everything. * Office isn't running in fucking Javascript
- oceanswave 10y agoOh really? * Excel alone uses 86.1MB of private memory, and 142MB on a Blank Workbook. * Where did you get this 100MB metric? VS Code uses 24MB Private, 86MB shared and I've got a ton of extensions added. * No, most electron apps are offline apps. * I doubt it. Creating performant HTML layouts and WebGL rendering all verified by independent 3rd party test suites is hard, dude. If someone came to you and said "Build a HTML engine or build Word" which would you choose? * O'rly? Office 2016 add ins are built in JS, and there are built-in "addins"
- 10y ago
- shriek 10y agoElectron saved my ass when I was trying to come up with a simple solution for non-technical people trying to get their things done. So, thank you and team for doing this. I would like to see this achieve what Java couldn't.
- ConAntonakos 10y agoYou guys are awesome and doing fantastic work. Thanks for the inspiration and for open-sourcing an amazing product!
- tracker1 10y agoI'm curious, and not willing to fill out a form to find out... it looks like N1 uses Nylas Cloud for data/services... that said, there's no actual published cost for this. I have several email accounts and would love a cloud/web version to access them all, combined with a standalone (desktop-ish) app, as the electron one... But I'm concerned about the pricing model, and with no openly published price, and no apparent income source, I am hesitant to even try the application. Thanks for the work you are doing here, I feel that Email is one area that could use a lot of work.
- grinich 10y agoIt's here: https://nylas.com/pricing https://nylas.com/pricing And you can read our blog post about announcing the pricing: https://nylas.com/blog/nylas-pro/ https://nylas.com/blog/nylas-pro/ We haven't yet shipped the version which allows you to upgrade, but it's coming shortly.
- tracker1 10y agoThanks, I didn't see an obvious link (should have clicked "more"), wound up on NylasCloud page, which did have pricing, but that linked to a contact form. Might be worth having a Pricing link/button next to download, and from the Free column, to the download screen. Also, since the data is all in your cloud, would be nice to have a "web" version, so that I could use the app without needing to install. That would be ideal for me, a web-mail app that I can manage all my accounts from anywhere, even when I'm not on my home computer. Just a few thoughts.
- grinich 10y agoThanks for the feedback!
- mookerific 10y agoJust a huge thank you for N1. It's fantastic!