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
Eugene Oskin
January 20, 2018
Programming
0
33
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
71
Introduction to gRPC
evgeneoskin
0
60
GrailInventory – Advanced Backend Development
evgeneoskin
0
32
Bracing Calculator
evgeneoskin
1
63
emotional intelligence, part 2
evgeneoskin
0
34
Office temperature
evgeneoskin
0
31
Parse platform
evgeneoskin
0
96
Hubot
evgeneoskin
0
47
An introduction to iOS development
evgeneoskin
0
37
Other Decks in Programming
See All in Programming
単体テストを書かない技術 #phpcon_odawara
o0h
PRO
27
8.3k
OpenAPIを中心に考えるAPI開発入門 / Introduction to API Development with a Focus on OpenAPI
seike460
PRO
2
170
二郎系ラーメンのコールで学ぶ AST 解析
memory1994
PRO
7
1.7k
Ruby GitHub Packages
bkuhlmann
0
630
AWS Application Composerで始める、 サーバーレスなデータ基盤構築 / 20240406-jawsug-hokuriku-shinkansen
kasacchiful
1
260
Node.js v22 で変わること
yosuke_furukawa
PRO
9
3.4k
Goのmultiple errorsについて (2024年4月版)
syumai
3
880
新宿ダンジョンを可視化してみた
satoshi7190
2
260
Let's learn code review
riofujimon
2
350
VSCodeでのDatabricks開発もお勧めしたい/I would also recommend Databricks development with VSCode.
kazumain
0
250
Build Apps for iOS, Android & Desktop in 100% Kotlin With Compose Multiplatform (mDevCamp 2024)
zsmb
0
340
Blue/Greenデプロイの導入による 運用フローの改善
kudoas
1
380
Featured
See All Featured
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
121
39k
Bash Introduction
62gerente
604
210k
Statistics for Hackers
jakevdp
789
220k
Design by the Numbers
sachag
274
18k
The Mythical Team-Month
searls
216
42k
How GitHub Uses GitHub to Build GitHub
holman
468
290k
VelocityConf: Rendering Performance Case Studies
addyosmani
320
23k
No one is an island. Learnings from fostering a developers community.
thoeni
16
2.1k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
226
51k
Typedesign – Prime Four
hannesfritz
36
2.1k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
501
140k
The Pragmatic Product Professional
lauravandoore
25
5.8k
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