Thanks for covering NW.js, Natalia!
I got your "233 MB" app down to a 20 MB Windows installer (61.5 MB once installed). Available here:
If your goal is to have the same functionality as Electron, but at a considerably smaller filesize. NW.js offers that option.
It also offers the ability to have much more functionality and features, including access to the latest versions of Node and Chromium within 24 hours of a new release of either. Of course if you want the latest and greatest, it will be a big file size. That's the trade-off.
I just finished writing an article on how to reduce the filesize for an NW.js app, if anyone would like the secrets of turning a 233 MB app into a 20MB app.
Could you describe given process to optimize NW.js package step by step?
Given article tells us about other case with 59.8Mb installer result. But you're speaking about 20Mb.
I didn't do anything that isn't mentioned in the article. I just took it to the extreme in every scenario.
In a more real world scenario the installer would be closer to 60 MB, and the installed version would be closer to 110MB. Ultimately, there is only so much you can do while shipping a copy of Node and an entire browser to your user. If filesize really is your greatest concern, then browser-based desktop apps aren't the way to go. I've compiled a list of alternative tools with pros/cons at XPDA.net
You could get it even smaller, probably well under 10mb with neutralino.js.org/
Neutralino is a neat little tool. It would certainly work in this simple app example. It has a lot of drawbacks though and you'd be better off with something more fleshed out. Even if your primary concern is filesize, there are plenty of other tools that produce very small packages with a better feature set. You can check out the cons of Neutralino, and some other alternatives here: xpda.net/#NeutralinoJs
Thank you Jared! Would you mind if I add the link to my article too?
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.