Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Electron
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Eugene Oskin
January 20, 2018
Programming
0
43
Electron
Eugene Oskin
January 20, 2018
Tweet
Share
More Decks by Eugene Oskin
See All by Eugene Oskin
REST API. Django, Ruby on Rails, Play! Framework
evgeneoskin
0
92
Introduction to gRPC
evgeneoskin
0
98
GrailInventory – Advanced Backend Development
evgeneoskin
0
38
Bracing Calculator
evgeneoskin
1
69
emotional intelligence, part 2
evgeneoskin
0
40
Office temperature
evgeneoskin
0
35
Parse platform
evgeneoskin
0
100
Hubot
evgeneoskin
0
52
An introduction to iOS development
evgeneoskin
0
43
Other Decks in Programming
See All in Programming
Amazon Bedrockを活用したRAGの品質管理パイプライン構築
tosuri13
4
250
LLM Observabilityによる 対話型音声AIアプリケーションの安定運用
gekko0114
2
420
ぼくの開発環境2026
yuzneri
0
120
CSC307 Lecture 09
javiergs
PRO
1
830
Unicodeどうしてる? PHPから見たUnicode対応と他言語での対応についてのお伺い
youkidearitai
PRO
1
1.1k
今こそ知るべき耐量子計算機暗号(PQC)入門 / PQC: What You Need to Know Now
mackey0225
3
370
0→1 フロントエンド開発 Tips🚀 #レバテックMeetup
bengo4com
0
540
Fragmented Architectures
denyspoltorak
0
150
OCaml 5でモダンな並列プログラミングを Enjoyしよう!
haochenx
0
140
20260127_試行錯誤の結晶を1冊に。著者が解説 先輩データサイエンティストからの指南書 / author's_commentary_ds_instructions_guide
nash_efp
0
920
コントリビューターによるDenoのすゝめ / Deno Recommendations by a Contributor
petamoriken
0
200
dchart: charts from deck markup
ajstarks
3
990
Featured
See All Featured
Become a Pro
speakerdeck
PRO
31
5.8k
Technical Leadership for Architectural Decision Making
baasie
1
240
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.7k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.8k
Designing Powerful Visuals for Engaging Learning
tmiket
0
220
Chasing Engaging Ingredients in Design
codingconduct
0
110
[SF Ruby Conf 2025] Rails X
palkan
1
740
Scaling GitHub
holman
464
140k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.9k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
240
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
280
エンジニアに許された特別な時間の終わり
watany
106
230k
Transcript
Goedendag, Electron
Plan • Desktop App Development Problems? • Electron solutions •
Electron Problems
Desktop App Development Problems?
Desktop App Development Problems? • Cross platform • Installers •
Deliver • Testing
Desktop App Development Problems? • Cross platform? ◦ Cross compiling
(Qt and others) ◦ Java (Virtual) Machine ◦ Go
Desktop App Development Problems? • Installers ◦ UI: Windows, Mac
◦ Configure it
Desktop App Development Problems? • Deliver ◦ Stores ◦ Download
page ◦ Package managers ◦ AppDater?
Desktop App Development Problems? • Testing ◦ Behave Testing?
Electron solutions
Electron solutions • Cross platform • Installers • Deliver •
Testing
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)
Electron solutions • Installers ◦ electron-builder ◦ electron-packager
Electron solutions • Deliver ◦ Stores ◦ Download page ◦
Package managers ◦ AutoUpdates with Squirrel (Window, MacOS) ▪ It requires backend (electron-release-server or github)
Electron solutions • Testing ◦ Spectron ◦ Karma
Electron Problems • Architecture (main process and renderers ) •
NodeJS in browser • IpcRenderer ↔ IpcMain with JSON ◦ Main process manages renderers • Desktop apps are complex…
Electron Problems • Binary size >= 100Mb, reducing requires recompiling
Chromium • JS boilerplate code • Frontend frameworks
Summary
Summary • Desktop App Development Problems • Electron solutions •
Electron Problems
References • http://electron.atom.io/docs/ • https://github.com/atom/atom/ • https://github.com/sindresorhus/awesome-electron • https://github.com/chentsulin/electron-react-boilerpl ate
• http://photonkit.com/ • https://github.com/maxogden/menubar