SlideShare a Scribd company logo
Create AmazingCross-
Platform Desktop Node Apps
with Electron
ViennaJS, June
@chrischinch
Use any of these?
What is it?
• From GitHub*
• JavaScript as a ‘desktop’
Application
• Version 1.0 released in May
*You might have heard of them
Install and Setup
npm install electron-prebuilt -g
brew install Caskroom/cask/electron
End result
For GUI fans
For CLI fans
electron .
An Electron project
index.html: The web page
rendered by default.
main.js: Starts app and creates
a browser window to render
HTML.
package.json: Lists application
dependencies, meta data and
files needed.
main.js
const electron = require('electron');

const app = electron.app;

const BrowserWindow = electron.BrowserWindow;



var mainWindow = null;



app.on('window-all-closed', function() {

if (process.platform != 'darwin') {

app.quit();

}

});



app.on('ready', function() {

mainWindow = new BrowserWindow({width: 800, height: 600});

mainWindow.loadURL('file://' + __dirname + '/app/index.html');

mainWindow.on('closed', function() {

mainWindow = null;

});

});
The app
Packaging
• Create asar archive
• Copy files into Electron app
• Rename, distribute, etc…
• Use 3rd party tool 👍
Electron Packager
electron-packager
/Users/chrisward/Workspace/sp_electron MarvelBrowse
--platform=darwin --arch=x64 --asar --prune
—version=1.2.5
--out=/Users/chrisward/Workspace --overwrite
--icon=/Users/chrisward/Workspace/sp_electron/marvel-app.icns
Going native
• Notifications
• Recent documents
• Menus
• Progress bars, thumbnails,
represented file, dock, System
preferences…
Thank You!
Chris Ward
gregariousmammal.com
@chrischinch
Developer Relations & Technical Writer
I have stickers and merchandise!

More Related Content

What's hot (20)

PPTX
Debugging IE Performance Issues with xperf, ETW and NavigationTiming
Nicholas Jansma
 
PDF
Cross-Platform Desktop Apps with Electron (CodeStock Edition)
David Neal
 
PDF
Building desktop applications with web technologies - ELECTRON the easy way
stefanjudis
 
PPTX
Electron
Jens Siebert
 
PPTX
Cross-Platform Desktop Apps with Electron
Vimanet
 
PPTX
Desktop Apps in a Javascript World - Electron
Marc MacLeod
 
PDF
Building a Desktop Streaming console with Electron and ReactJS
Emanuele Rampichini
 
PDF
Native Desktop App with Node.js Webkit (HTML, CSS & Javascript)
Eddie Lau
 
PDF
Desktop apps with node webkit
Paul Jensen
 
PPTX
Using Modern Browser APIs to Improve the Performance of Your Web Applications
Nicholas Jansma
 
PDF
JavaScript and Desktop Apps - Introduction to Electron
Brainhub
 
PDF
electron for emberists
Aidan Nulman
 
PDF
Web versus Native: round 1!
Chris Mills
 
PDF
Empowering the "mobile web"
Chris Mills
 
PDF
Amsterdam.js talk: node webkit
Fabian Jakobs
 
PDF
APIs, now and in the future
Chris Mills
 
PDF
Cross-Platform Desktop Apps with Electron (Condensed Version)
David Neal
 
PDF
APIs for modern web apps
Chris Mills
 
PDF
Developing Desktop Apps with Electron & Ember.js - FITC WebU2017
Aidan Nulman
 
PDF
Make It Fast - Using Modern Browser Performance APIs to Monitor and Improve t...
Nicholas Jansma
 
Debugging IE Performance Issues with xperf, ETW and NavigationTiming
Nicholas Jansma
 
Cross-Platform Desktop Apps with Electron (CodeStock Edition)
David Neal
 
Building desktop applications with web technologies - ELECTRON the easy way
stefanjudis
 
Electron
Jens Siebert
 
Cross-Platform Desktop Apps with Electron
Vimanet
 
Desktop Apps in a Javascript World - Electron
Marc MacLeod
 
Building a Desktop Streaming console with Electron and ReactJS
Emanuele Rampichini
 
Native Desktop App with Node.js Webkit (HTML, CSS & Javascript)
Eddie Lau
 
Desktop apps with node webkit
Paul Jensen
 
Using Modern Browser APIs to Improve the Performance of Your Web Applications
Nicholas Jansma
 
JavaScript and Desktop Apps - Introduction to Electron
Brainhub
 
electron for emberists
Aidan Nulman
 
Web versus Native: round 1!
Chris Mills
 
Empowering the "mobile web"
Chris Mills
 
Amsterdam.js talk: node webkit
Fabian Jakobs
 
APIs, now and in the future
Chris Mills
 
Cross-Platform Desktop Apps with Electron (Condensed Version)
David Neal
 
APIs for modern web apps
Chris Mills
 
Developing Desktop Apps with Electron & Ember.js - FITC WebU2017
Aidan Nulman
 
Make It Fast - Using Modern Browser Performance APIs to Monitor and Improve t...
Nicholas Jansma
 

Similar to Building Cross Platform Apps with Electron (20)

PDF
Electron - Solving our cross platform dreams?
Chris Ward
 
PDF
Electron JS | Build cross-platform desktop applications with web technologies
Bethmi Gunasekara
 
PDF
Electron
ITCP Community
 
PDF
Electron
Mark Lechtermann
 
PPTX
Electron - cross platform desktop applications made easy
Ulrich Krause
 
PDF
Cross-Platform Desktop Apps with Electron (JSConf UY)
David Neal
 
PPTX
Electron - Google I/O Extended Cuiabá
Victor Hugo S. Nunes
 
PPTX
SubmitJS: Developing desktop applications with Electron. Mykyta Semenistyi
Binary Studio
 
PDF
Electron presentation
StanislavNikolaenko2
 
PPTX
Cross-platform Desktop Apps development using HTML, CSS, JS with Electron
Esinniobiwa Quareeb
 
PDF
Electron Firenze 2020: Linux, Windows o MacOS?
Denny Biasiolli
 
PDF
Electron: Linux, Windows or Macos?
Commit University
 
PDF
An overview of the architecture of electron.js
Moon Technolabs Pvt. Ltd.
 
PDF
Electron
Eugen Oskin
 
PDF
Building desktop applications for fun with electron
TMME - TECH MEETUP FOR MYANMAR ENGINEERS IN JP
 
PPTX
Learn Electron for Web Developers
Kyle Cearley
 
PDF
How to use electron to build multi platform desktop applications
Moon Technolabs Pvt. Ltd.
 
PPTX
Володимир Дубенко "Node.js for desktop development (based on Electron library)"
Fwdays
 
PDF
Developing Desktop Apps with Electron & Ember.js
FITC
 
PDF
Electron
Debopam Sengupta
 
Electron - Solving our cross platform dreams?
Chris Ward
 
Electron JS | Build cross-platform desktop applications with web technologies
Bethmi Gunasekara
 
Electron
ITCP Community
 
Electron - cross platform desktop applications made easy
Ulrich Krause
 
Cross-Platform Desktop Apps with Electron (JSConf UY)
David Neal
 
Electron - Google I/O Extended Cuiabá
Victor Hugo S. Nunes
 
SubmitJS: Developing desktop applications with Electron. Mykyta Semenistyi
Binary Studio
 
Electron presentation
StanislavNikolaenko2
 
Cross-platform Desktop Apps development using HTML, CSS, JS with Electron
Esinniobiwa Quareeb
 
Electron Firenze 2020: Linux, Windows o MacOS?
Denny Biasiolli
 
Electron: Linux, Windows or Macos?
Commit University
 
An overview of the architecture of electron.js
Moon Technolabs Pvt. Ltd.
 
Electron
Eugen Oskin
 
Building desktop applications for fun with electron
TMME - TECH MEETUP FOR MYANMAR ENGINEERS IN JP
 
Learn Electron for Web Developers
Kyle Cearley
 
How to use electron to build multi platform desktop applications
Moon Technolabs Pvt. Ltd.
 
Володимир Дубенко "Node.js for desktop development (based on Electron library)"
Fwdays
 
Developing Desktop Apps with Electron & Ember.js
FITC
 
Ad

More from Chris Ward (20)

PDF
Automate your docs, automate yourself
Chris Ward
 
PDF
Back to the future with static site generators
Chris Ward
 
PDF
Android Programming without Java
Chris Ward
 
PDF
The past, present and future of swift, Voxxed Belgrade 2016
Chris Ward
 
PDF
A Documentation Crash Course, LinuxCon 2016
Chris Ward
 
PDF
Always Listening User Experience
Chris Ward
 
PPT
JS, CMS, untangle the mess
Chris Ward
 
PPT
Why you should come to DrupalSouth
Chris Ward
 
PPTX
Extend Drupal with a CRM, DrupalGov 2013
Chris Ward
 
PPTX
Drupal DevOps - Melbourne DevOps July 2013
Chris Ward
 
PPTX
Removing Barriers in Engagement - Melbourne Geek Night, July 2013
Chris Ward
 
PPTX
Power your mobile app with Drupal - Melbourne Mobile, July 2013
Chris Ward
 
PPTX
Tweak, Test and Debug your mobile apps from Web directions code 13
Chris Ward
 
PPTX
Why your image of the world could be wrong
Chris Ward
 
PPTX
Take your drupal sites offline
Chris Ward
 
PPTX
Green Renters' Giant Green Games
Chris Ward
 
PPTX
Customising civicrm
Chris Ward
 
PPTX
Drupal - Melbourne cryptoparty
Chris Ward
 
PPTX
HP Lovecraft, laneway learning
Chris Ward
 
PPTX
CiviCRM and Wordpress
Chris Ward
 
Automate your docs, automate yourself
Chris Ward
 
Back to the future with static site generators
Chris Ward
 
Android Programming without Java
Chris Ward
 
The past, present and future of swift, Voxxed Belgrade 2016
Chris Ward
 
A Documentation Crash Course, LinuxCon 2016
Chris Ward
 
Always Listening User Experience
Chris Ward
 
JS, CMS, untangle the mess
Chris Ward
 
Why you should come to DrupalSouth
Chris Ward
 
Extend Drupal with a CRM, DrupalGov 2013
Chris Ward
 
Drupal DevOps - Melbourne DevOps July 2013
Chris Ward
 
Removing Barriers in Engagement - Melbourne Geek Night, July 2013
Chris Ward
 
Power your mobile app with Drupal - Melbourne Mobile, July 2013
Chris Ward
 
Tweak, Test and Debug your mobile apps from Web directions code 13
Chris Ward
 
Why your image of the world could be wrong
Chris Ward
 
Take your drupal sites offline
Chris Ward
 
Green Renters' Giant Green Games
Chris Ward
 
Customising civicrm
Chris Ward
 
Drupal - Melbourne cryptoparty
Chris Ward
 
HP Lovecraft, laneway learning
Chris Ward
 
CiviCRM and Wordpress
Chris Ward
 
Ad

Recently uploaded (20)

PDF
New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
PDF
NewMind AI - Journal 100 Insights After The 100th Issue
NewMind AI
 
PDF
Building Real-Time Digital Twins with IBM Maximo & ArcGIS Indoors
Safe Software
 
PDF
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
PDF
July Patch Tuesday
Ivanti
 
PDF
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
PPTX
COMPARISON OF RASTER ANALYSIS TOOLS OF QGIS AND ARCGIS
Sharanya Sarkar
 
PDF
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 
PDF
From Code to Challenge: Crafting Skill-Based Games That Engage and Reward
aiyshauae
 
PPTX
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
PPTX
Q2 FY26 Tableau User Group Leader Quarterly Call
lward7
 
PDF
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 
PDF
Blockchain Transactions Explained For Everyone
CIFDAQ
 
PDF
Complete JavaScript Notes: From Basics to Advanced Concepts.pdf
haydendavispro
 
PDF
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
PDF
Fl Studio 24.2.2 Build 4597 Crack for Windows Free Download 2025
faizk77g
 
PDF
Python basic programing language for automation
DanialHabibi2
 
PDF
"AI Transformation: Directions and Challenges", Pavlo Shaternik
Fwdays
 
PDF
Transcript: New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
PDF
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
NewMind AI - Journal 100 Insights After The 100th Issue
NewMind AI
 
Building Real-Time Digital Twins with IBM Maximo & ArcGIS Indoors
Safe Software
 
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
July Patch Tuesday
Ivanti
 
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
COMPARISON OF RASTER ANALYSIS TOOLS OF QGIS AND ARCGIS
Sharanya Sarkar
 
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 
From Code to Challenge: Crafting Skill-Based Games That Engage and Reward
aiyshauae
 
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
Q2 FY26 Tableau User Group Leader Quarterly Call
lward7
 
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 
Blockchain Transactions Explained For Everyone
CIFDAQ
 
Complete JavaScript Notes: From Basics to Advanced Concepts.pdf
haydendavispro
 
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
Fl Studio 24.2.2 Build 4597 Crack for Windows Free Download 2025
faizk77g
 
Python basic programing language for automation
DanialHabibi2
 
"AI Transformation: Directions and Challenges", Pavlo Shaternik
Fwdays
 
Transcript: New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 

Building Cross Platform Apps with Electron