On improving Electron app packaging


#1

Hi, I’m looking for feedback on my ideas.

Improve/Replace asar?



The big thing about node-compiler is leaving the fs node module untouched and read-only ramdisk.
At least adding built-in LZ4 or Brotli compression to asar for HTML, JS, CSS and SVG would save some disk space without incurring too great performance penalty.
Having a single portable executable would be convenient. Only major downside I can think of is the loss of efficient delta patching when shipping updates.

Smaller Electron?

Another (and a lot less complex) idea I’ve toyed with is stripped/hardened/minimalist Electron builds, following the ‘ship only what you need’ mentality.
For example, in my current use cases printing, widewine or PDF viewer are all bloat.
Possibly implement as build flags and a bunch of #ifdefs?

devops?

Actually transforming a project from loose collection of files to something actually publishable is more complex than I’d like it to be. That’s easily solved by automation but setting all up properly could be easier. Electron-forge seems to be the leading solution at the moment.
Perhaps introduce an official build tool that just works out of box and comes with sane defaults and ship it along with every Electron release like the alternative ffmpeg binaries?