gluon/README.md

3.0 KiB

Gluon

Minimal integrated ecosystem for making "desktop apps" from websites easily using Chromium and NodeJS. Uses system installed Chromium and NodeJS, with optional bundling if you want that too (soon). VERY early and probably never finished/production ready. Finds system installed Chromium binary (doesn't use WebView2).

Gluworld Screenshot


Ecosystem

  • Gluon: the Gluon library (NodeJS)
  • Glugun: builds Gluon apps into releasable builds with optional bundling (soon)

Apps

  • Gluworld: basic Hello World demo app
  • Glucord: minimal desktop Discord client loading official webapp (demo/example)


Comparisons

Internals

Part Gluon Electron Tauri Neutralinojs
Frontend System installed Chromium Self-contained Chromium System installed webview System installed webview
Backend System installed Node.JS Self-contained Node.JS Native (Rust) Native (Any)
IPC None (WIP) Preload Window object Window object
Status Early in development "Production ready" Usable Usable
Ecosystem Integrated Distributed Integrated Integrated

Benchmark / Stats

Basic (plain HTML) Hello World demo, measured on up to date Windows 10. Used latest stable versions of all frameworks as of 9th Dec 2022. (You shouldn't actually use random stats in benchmarks to compare frameworks, this is more so you know what Gluon is like compared to other similar projects.)

Stat Gluon Electron Tauri Neutralinojs
Build Size ~0.5MB123 ~220MB ~1.8MB1 ~2.6MB1
Memory Usage ~80MB2 ~100MB ~90MB ~90MB
Backend4 Memory Usage ~13MB2 (Node) ~22MB (Node) ~3MB (Native) ~3MB (Native)
Build Time ~0.7s5 ~20s6 ~120s7 ~2s58

Extra info: All HTML/CSS/JS is unminified (including Gluon). Built in release configuration. All binaries were left as compiled with common size optimizations enabled for that language, no stripping/packing done.


  1. Does not include system installed components. ↩︎

  2. Early/WIP data, may change in future. ↩︎

  3. How is Gluon so small? Since NodeJS is expected as a system installed component, it is "just" bundled and minified Node code. ↩︎

  4. Backend like non-Web (not Chromium/WebView2/etc). ↩︎

  5. Includes Node.JS spinup time. ↩︎

  6. Built for win32 zip (not Squirrel) as a fairer comparison ↩︎

  7. Cold build (includes deps compiling) in release mode. ↩︎

  8. Using neu build -r ↩︎