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+Vue+Swift=真のデスクトップアプリ / How to create ...
Search
果物リン
October 22, 2024
0
78
Electron+Vue+Swift=真のデスクトップアプリ / How to create "Really" desktop app using Electron
ちょっと盛ったかもしれないけど
ElectronにAPIがないからって諦めないデスクトップアプリ開発の話
果物リン
October 22, 2024
Tweet
Share
More Decks by 果物リン
See All by 果物リン
ある日オレオレフレームワークを作りたくなったぞ/Want to Create Oreore Framework
fruitriin
1
130
fishとfzfはじめて 豊かになりました / fish and fzf is good
fruitriin
1
880
Chrome Devtools使いこなしたい/I want to master devtool
fruitriin
3
1.5k
Event Stage - 真面目に作ったけど 全くウケなくてクソだったアプリ/I made new service but they say shit
fruitriin
0
170
読み上げチャット+映像配信サービス作ってるけど…/I develop Text-to-Speach chat and broadcast Savice but...
fruitriin
0
140
とある自社開発の苦楽の軌跡/Trajectory of a Certain In-house Development Effort
fruitriin
1
250
動画再生速度を変更するコンポーネントを作ろうとして諦めた話/talk about give up to create video with playback-rate controller
fruitriin
6
940
Soft Skillsから伝えたい新人時代の個人開発技術選定/Selecting Stack for Personal Development as a from Soft Skills
fruitriin
2
360
SFCで挑戦するFunctional Component/Functional Component Challenge at SFC
fruitriin
3
1.6k
Featured
See All Featured
The Art of Programming - Codeland 2020
erikaheidi
56
13k
Building Adaptive Systems
keathley
43
2.7k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Agile that works and the tools we love
rasmusluckow
330
21k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
358
30k
GraphQLの誤解/rethinking-graphql
sonatard
72
11k
GraphQLとの向き合い方2022年版
quramy
49
14k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Writing Fast Ruby
sferik
628
62k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
9
820
4 Signs Your Business is Dying
shpigford
184
22k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
Transcript
Electron+Vue++Swift = 真のデスクトップアプリ ՌϦϯ@
[email protected]
Misskey.systems
ʢλΠτϧʣ ͍ͩͿ͔ͬͨ͠Εͳ͍
自己紹介@果物リン • ͘Β͍ແ৬ͱ͍͏ࣗ༝ΛᨳՎத • Vue͕͖Ͱͨ·Βͳ͍ • Misskey.systems͔Β͖·ͨ͠ • ͜Εʹ͍͍ͭͯͬͺ͍͍͚ͨ͠Ͳ
こんなアプリ作ってます ࡞ Taskbar.fm
ElectronͰ͢
(おさらい)Electron • BrowserViewͱσεΫτοϓAPIୟ͚Δ܅ͷηοτ • ͜Ε͑͋͞ΕWebΤϯδχΞͷ͋ͳͨ σεΫτοϓΞϓϦ͕࡞ΕͪΌ͍·͢ʂ
πʔϧόʔ࡞Γ͍ͨͳ͋
ϓϩηεͷϦετ͕΄͍͠ͳ͋
None
APIΓͳ͘ͳ͍……ʁ
None
ݟ͑ͳ͍Αʂʼ
ŗŕʂʼ
SwiftͰϓϩηεϦετ ࡞ͬͯऔಘ͢Δ͔
Swift製CLI tool作り方3種類 • xCodeىಈͯ͠ΰϦΰϦͬͱ࡞Δ • swiftc ͰϏϧυ͢Δ • swift build
ͰϏϧυ͢Δ
None
݁ہؾ߹
Nodeから起動して取り扱う • xCodeىಈͯ͠ΰϦΰϦͬͱ࡞Δ
Nodeから起動して取り扱う • xCodeىಈͯ͠ΰϦΰϦͬͱ࡞Δ ݺͼग़ͤΔ
Nodeから起動して取り扱う • xCodeىಈͯ͠ΰϦΰϦͬͱ࡞Δ stdoutΛ͘Εʂ
Nodeから起動して取り扱う • xCodeىಈͯ͠ΰϦΰϦͬͱ࡞Δ stdoutΛ͘Εʂ
Nodeから起動して取り扱う • xCodeىಈͯ͠ΰϦΰϦͬͱ࡞Δ ϑϩϯτΤϯυʹ͛Δͧʂ
こんなアプリ作ってます ࡞ Taskbar.fm
ΊͰͨ͠ΊͰͨ͠
Appendix ʮVueʹ͍ͭͯͷͳ͍ΜͰ͔͢ʂʁʯ
ࢲ͖ʹͨ͠
ElectronViteがいい感じ • xCodeىಈͯ͠ΰϦΰϦͬͱ࡞Δ
ViteならなんでもOK • ࢮ͵΄ͲViteͰϓϩδΣΫτ࡞ͬͨਓʹ ʮ͋ʔɺͳΔ΄ͲͶʯΈ͍ͨͳؾ࣋ͪʹͳ͍ͬͯΔͣ • Vue3ͷඪ४Nuxtͷඪ४ʹͳͬͨϏϧυπʔϧ • Electron ViteͪΖvueΛαϙʔτ
マイカスタマイズ • preloadσΟϨΫτϦআ • electron-toolkit/preload Ͱ͍͍͔ͳ • main/index.tsΛmain.tsʹɺ renderer/index.tsΛrendere.tsʹϦωʔϜ →
ೝࣝෛՙԼ
Ask any Questionʁ