Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Electron

 Electron

Eugene Oskin

January 20, 2018
Tweet

More Decks by Eugene Oskin

Other Decks in Programming

Transcript

  1. Desktop App Development Problems? • Cross platform? ◦ Cross compiling

    (Qt and others) ◦ Java (Virtual) Machine ◦ Go
  2. Electron solutions • Cross platform ◦ NodeJS + Chromium ◦

    Native module requires rebuilding ▪ ./node_modules/.bin/electron-rebuild ◦ tray+menu out of the box ◦ Native UI? (try photonkit)
  3. Electron solutions • Deliver ◦ Stores ◦ Download page ◦

    Package managers ◦ AutoUpdates with Squirrel (Window, MacOS) ▪ It requires backend (electron-release-server or github)
  4. Electron Problems • Architecture (main process and renderers ) •

    NodeJS in browser • IpcRenderer ↔ IpcMain with JSON ◦ Main process manages renderers • Desktop apps are complex…
  5. Electron Problems • Binary size >= 100Mb, reducing requires recompiling

    Chromium • JS boilerplate code • Frontend frameworks