Power 6 Can access the file system Atom A Website Can access the clipboard Can adjust the menus Can load native modules Can integrate with the OS ! x Can access the file system Can access the clipboard Can adjust the menus Can load native modules Can integrate with the OS ! ! ! ! x x x x
Electron? 9 JavaScript, HTML, and CSS Electron http://electron.atom.io/ — https://github.com/atom/electron Tool for building cross-platform native apps with web technology
Electron? 10 Electron http://electron.atom.io/ — https://github.com/atom/electron OS JavaScript, HTML, and CSS Tool for building cross-platform native apps with web technology
an Electron App 21 Main Process /src/main Renderer Process /src/renderer IPC Renderer Process /src/renderer Simple Sample - https://github.com/electronjs/electron-sample
is Master of Puppets 23 Main Process /src/main Renderer Process /src/renderer IPC Renderer Process /src/renderer Quick Start - https://github.com/atom/electron-quick-start
is Master of Puppets 24 Main Process /src/main Renderer Process /src/renderer IPC Renderer Process /src/renderer Start App Quick Start - https://github.com/atom/electron-quick-start
is Master of Puppets and Highlander 25 Main Process /src/main Renderer Process /src/renderer IPC Renderer Process /src/renderer Start App Quick Start - https://github.com/atom/electron-quick-start
renders HTML/CSS 26 Main Process /src/main Renderer Process /src/renderer Renderer Process /src/renderer Start App new BrowserWindow(‘index.html’) Quick Start - https://github.com/atom/electron-quick-start
renders HTML/CSS 27 Main Process /src/main Renderer Process /src/renderer Renderer Process /src/renderer Start App new BrowserWindow() new BrowserWindow() Quick Start - https://github.com/atom/electron-quick-start
communicate via IPC IPC 29 Main Process /src/main Renderer Process /src/renderer Renderer Process /src/renderer Start App menuItemClicked() quit() Quick Start - https://github.com/atom/electron-quick-start
start does not… 35 Package your app for distribution Compile popular languages (Coffee, TypeScript, Babel, SCSS, Less) Help you test your app Properly install native modules Deal with auto updates
to the rescue! 36 electron-packager - Create .app and .exes electron-rebuild - Rebuild native modules electron-compile - Compile Coffee, etc to JS electron-jasmine - Test runner electron-mocha - Another test runner
to the rescue! 37 electron-packager - Create .app and .exes electron-rebuild - Rebuild native modules electron-compile - Compile Coffee, etc to JS electron-jasmine - Test runner electron-mocha - Another test runner But composing them into is hard
Samples Curve: Vector drawing tool — https://github.com/benogle/curve-app ; Step by step: https://github.com/benogle/curve-basic Atom — http://atom.io/ ; Repo: https://github.com/atom/atom Quick Start — https://github.com/atom/electron-quick-start Electron — http://electron.atom.io/ ; Repo: https://github.com/atom/electron KittyDetect: Cat face detection sample — https://github.com/benogle/kitty-detect-app Electron resources — https://github.com/sindresorhus/awesome-electron More samples of API usage — https://github.com/hokein/electron-sample-apps From the community Ben Ogle https://github.com/benogle [email protected] Basic Sample — https://github.com/electronjs/electron-sample