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

Node on the Desktop — Node Conf Oslo 2016

Node on the Desktop — Node Conf Oslo 2016

Node on the Desktop via Electron.

Evan Morikawa

June 04, 2016
Tweet

More Decks by Evan Morikawa

Other Decks in Programming

Transcript

  1. Node on the Desktop 1. A Marriage of Node &

    Chromium 2. Native (Electron) Extensions 3. 4. 5.
  2. Node on the Desktop 1. A Marriage of Node &

    Chromium 2. Native (Electron) Extensions 3. DOM with fs 4. 5.
  3. Node on the Desktop 1. A Marriage of Node &

    Chromium 2. Native (Electron) Extensions 3. DOM with fs 4. Process Control 5.
  4. Node on the Desktop 1. A Marriage of Node &

    Chromium 2. Native (Electron) Extensions 3. DOM with fs 4. Process Control 5. Plugins & Extensibility
  5. Node on the Desktop 1. A Marriage of Node &

    Chromium 2. Native (Electron) Extensions 3. DOM with fs 4. Process Control 5. Plugins & Extensibility
  6. Chromium Browser aka Backend aka Main Process C++ Renderer Renderer

    Renderer HTML / JS (DOM) HTML / JS (DOM) HTML / JS (DOM)
  7. Chromium Browser aka Backend aka Main Process C++ Renderer Renderer

    Renderer HTML / JS (DOM) HTML / JS (DOM) HTML / JS (DOM) ipc
  8. Browser aka Backend aka Main Process Renderer Renderer Renderer HTML

    / JS (DOM) HTML / JS (DOM) HTML / JS (DOM) ipc
  9. Browser aka Backend aka Main Process Renderer Renderer Renderer HTML

    / JS (DOM) HTML / JS (DOM) HTML / JS (DOM) ipc
  10. Node on the Desktop 1. A Marriage of Node &

    Chromium 2. Native (Electron) Extensions 3. DOM with fs 4. Process Control 5. Plugins & Extensibility Shared event loop | Node & Chromium Contexts
  11. Node on the Desktop 1. A Marriage of Node &

    Chromium 2. Native (Electron) Extensions 3. DOM with fs 4. Process Control 5. Plugins & Extensibility Shared event loop | Node & Chromium Contexts
  12. Node on the Desktop 1. A Marriage of Node &

    Chromium 2. Native (Electron) Extensions 3. DOM with fs 4. Process Control 5. Plugins & Extensibility Shared event loop | Node & Chromium Contexts Node gyp | Compiled for Windows
  13. Node on the Desktop 1. A Marriage of Node &

    Chromium 2. Native (Electron) Extensions 3. DOM with fs 4. Process Control 5. Plugins & Extensibility Shared event loop | Node & Chromium Contexts Node gyp | Compiled for Windows
  14. const q = `SELECT * FROM threads WHERE …` Rx.Observable.fromQuery(q)

    .filter(myFn).subscribe((threads) => { this.setState({threads}) })
  15. const q = `SELECT * FROM threads WHERE …` Rx.Observable.fromQuery(q)

    .filter(myFn) .map(mapFn).subscribe((threads) => { this.setState({threads}) })
  16. Node on the Desktop 1. A Marriage of Node &

    Chromium 2. Native (Electron) Extensions 3. DOM with fs 4. Process Control 5. Plugins & Extensibility Shared event loop | Node & Chromium Contexts Node gyp | Compiled for Windows SQLite | Live Queries to React
  17. Node on the Desktop 1. A Marriage of Node &

    Chromium 2. Native (Electron) Extensions 3. DOM with fs 4. Process Control 5. Plugins & Extensibility Shared event loop | Node & Chromium Contexts Node gyp | Compiled for Windows SQLite | Live Queries to React
  18. Node on the Desktop 1. A Marriage of Node &

    Chromium 2. Native (Electron) Extensions 3. DOM with fs 4. Process Control 5. Plugins & Extensibility Shared event loop | Node & Chromium Contexts Node gyp | Compiled for Windows SQLite | Live Queries to React Worker Windows
  19. Node on the Desktop 1. A Marriage of Node &

    Chromium 2. Native (Electron) Extensions 3. DOM with fs 4. Process Control 5. Plugins & Extensibility Shared event loop | Node & Chromium Contexts Node gyp | Compiled for Windows SQLite | Live Queries to React Worker Windows
  20. Node on the Desktop 1. A Marriage of Node &

    Chromium 2. Native (Electron) Extensions 3. DOM with fs 4. Process Control 5. Plugins & Extensibility Shared event loop | Node & Chromium Contexts Node gyp | Compiled for Windows SQLite | Live Queries to React Worker Windows “Installed” Plugins | React
  21. Node on the Desktop 1. A Marriage of Node &

    Chromium 2. Native (Electron) Extensions 3. DOM with fs 4. Process Control 5. Plugins & Extensibility “Installed” Plugins | React Worker Windows SQLite | Live Queries to React Node gyp | Compiled for Windows Shared event loop | Node & Chromium Contexts