Now that TideSDK is effectively dead, I've been looking into alternative 'wrappers' to run HTML/CSS/JS applications as stand-alone desktop applications. The three viable options I have run across so far, are NW.js (formerly node-webkit), brackets-shell, and Electron (formerly atom-shell).
The problem is that there does not appear to be a sufficiently complete comparison between the three in terms of feature set, compatibility, etc. I'm hoping to turn this into a more-or-less canonical thread on the (objective) differences between the three, in particular regarding:
- Platform support; operating systems, dependencies, etc.
- Language feature support, as far as HTML5, CSS3 and JavaScript are concerned. Think things like "does HTML5 video work, and if yes, what codecs are available?"
- Non-standard extra features, such as tray icons, popup notifications, and OS-rendered menu bars.
- Extensibility; eg. ability to 'plug in' native code, talk to Node.js, and so on.
- Architecture; in particular the architectural differences that affect daily usage as a developer.
- Debugging; included development tools, compatibility with commonly used tools like
node-inspector
, etc. - ... and so on.
What are the objective, technical differences that matter when making a choice between them as an application developer?