But search no further, we’ve done that work for you.
Electron desktop apps behave like web apps, but they can read and write data in the computer’s file system. There are many popular desktop apps built with Electron on the market, for example, Skype for Linux or Slack. If you want to learn more about popular desktop apps built with Electron, check out the article on 7 famous desktop apps using electron.
Electron is a mature technology with a growing community and thus makes for a great production environment. Thanks to Chromium engine UI rendering, you get the access to tools such as Developer Tools and Storage Access.
Although it’s the oldest Node.js-Chromium framework in the AppJS, Electron and NW.js trio, it’s not nearly as mature as its competition. Because it has lost its momentum, it may not be the best choice for new projects.
In AppJS you get the following:
- JS, HTML5, CSS, SVG, WebGL provided by Chromium
- mature http/https servers and client APIs – Node
- filesystem, DNS, cryptography, subprocesses, OS APIs – Node
- sandboxed code execution environments virtual machines – Node
Although it does not build desktop apps on its own, it can be used with Cordova or other similar tools to produce them. It uses MongoDB, Distributed Data Protocol, and a publish-subscribe pattern to auto-propagate the changes without developer interference. It has both front-end and back-end modules, including the API, build tools, Node.js packages.
Proton Native is a fresh release. It was made available on GitHub in the early months of 2018. What Proton Native does for desktop app development is similar to what React Native has done for mobile (read more about the difference between React.js, React Native and React VR).
This solution has a few other advantages – it uses the same syntax as React Native, works with React libraries including Redux and is compatible with Node.js.
- Frameworks that produce web browser hosted desktop apps, based on Node.js and Chromium (Electron, NW.js, AppJS).
- Frameworks that need to be used with Cordova-like tools (Meteor).
- Frameworks that use genuinely native components to build a desktop app (Proton Native).
It’s up to you which you choose, and it primarily depends on the type of project that you develop.
Hope this short list and overview helped you take a quick look at each of this tools and make it easier for you to decide which solution will perform best for you.