The result is an executable exposing a NodeJS REPL with a special API to control browser windows and frames direclty from Javascript. Some people will note the resemblance with node-webkit. Well, the building blocks are very similar but the overall architecture is fundamentally different: here we expose the Content API into a NodeJS context to have the necesary semantics and security model to build a browser using only Javascript code. Node-webkit, on the contrary, exposes nodeJS API within the renderer of a trivial browser (one window, one webcontents view) to make it super easy to build native apps using Javascript code.
Thank you! If I am understanding correct then the tl;dr is: node-webkit is made for building native apps using JS. breach is a web browser made for hacking with JS.
Well node-webkit is made for bulding native apps using JS. Breach is made to build browsers using JS (very different security requirements between a native app and a browser and who tabs interact within it)
Since everything in the browser is replaceable and implementable with JS/HTML/CSS then isn't Breach a layer above node-webkit? That is, everything can be changed, so you can write a Breach based app that has no regular browser component in it. I am trying to get a feel if Breach is perhaps more accessible way to do native app dev than node-webkit, which seems to require a lot of boilerplate that is necessary for basic apps.
I am a bit confused how Light Table and Atom can implement tabs if node-webkit is only one tab.