Table of Contents

About

Web app in a desktop environment

Architecture

There is several kinds of framework :

  • one that embeds a webkit based browser (chromium) that supports WebGL, WebWorkers, Audio, Video, Local Storage, etc (such as (such as Electron and node-webkit)
  • another that embeds a web server (such as jetty for java) which exposes services consumed by the GUI based on a Web Desktop App (websocket, HTTP Request/response. )
  • another that compiles to native binary

List

node-webkit

Electron

See Web - Electron (jgraph example)

Phosphore

Deprecated https://phosphorjs.github.io/ - JupyterLab is made with

React Native

React native compiles to binary

Java

The following framework can create distribution file

Style

Between Windows and Mac OS is done by adding a class on the body. (platform-win32 vs platform-darwin on Electron ?)