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
98
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
140
fishとfzfはじめて 豊かになりました / fish and fzf is good
fruitriin
1
920
Chrome Devtools使いこなしたい/I want to master devtool
fruitriin
3
1.5k
Event Stage - 真面目に作ったけど 全くウケなくてクソだったアプリ/I made new service but they say shit
fruitriin
0
180
読み上げチャット+映像配信サービス作ってるけど…/I develop Text-to-Speach chat and broadcast Savice but...
fruitriin
0
160
とある自社開発の苦楽の軌跡/Trajectory of a Certain In-house Development Effort
fruitriin
1
250
動画再生速度を変更するコンポーネントを作ろうとして諦めた話/talk about give up to create video with playback-rate controller
fruitriin
6
960
Soft Skillsから伝えたい新人時代の個人開発技術選定/Selecting Stack for Personal Development as a from Soft Skills
fruitriin
2
370
SFCで挑戦するFunctional Component/Functional Component Challenge at SFC
fruitriin
3
1.6k
Featured
See All Featured
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
74
Ethics towards AI in product and experience design
skipperchong
1
140
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
180
Paper Plane
katiecoart
PRO
0
44k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
210
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
57
41k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
200
Making the Leap to Tech Lead
cromwellryan
135
9.7k
Side Projects
sachag
455
43k
Designing for Timeless Needs
cassininazir
0
100
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ʁ