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でSlackをさらに便利にしちゃう / Slack with Electron
Search
Taiju Aoki
December 09, 2019
Programming
3
840
ElectronでSlackをさらに便利にしちゃう / Slack with Electron
LT for Ginza.js#7
https://ginzajs.connpass.com/event/154596/
Taiju Aoki
December 09, 2019
Tweet
Share
More Decks by Taiju Aoki
See All by Taiju Aoki
本番運用中 Oracle を破壊してしまった話 ~ 破壊と創世 ~ / Oracle Destruction and Creation
blue0513
0
2.9k
オンプレ to オンプレした話/on-premises2on-premises
blue0513
0
2.9k
GitもCIもテストもないプロジェクトでデプロイを自動化するまでの道 / rebuild of DevOps
blue0513
0
3.1k
Git & GitLab & コードレビューって? / about Git, GitLab, CodeReview
blue0513
0
210
GitHub の README をいい感じにする / Cool Readme
blue0513
3
1.6k
Emacs × Sound やってみた / Emacs with Sound
blue0513
1
980
Slack を TweetDeck にしてみた件 / slackdeck-proto
blue0513
0
2.9k
知ってるとお得な iTerm2 と zsh/bash の小技
blue0513
3
800
クラウド電子カルテを支える魂の技術
blue0513
0
2.4k
Other Decks in Programming
See All in Programming
2ヶ月で生産性2倍、お買い物アプリ「カウシェ」4チーム同時改善の取り組み
ike002jp
1
110
API for docs
soutaro
3
1.6k
七輪ライブラリー: Claude AI で作る Next.js アプリ
suneo3476
1
170
ASP.NETアプリケーションのモダナイゼーションについて
tomokusaba
0
240
Enterprise Web App. Development (1): Build Tool Training Ver. 5
knakagawa
1
120
Cursorを活用したAIプログラミングについて 入門
rect
0
150
Vibe Coding の話をしよう
schroneko
13
3.6k
M5UnitUnified 最新動向 2025/05
gob
0
120
Optimizing JRuby 10
headius
0
560
複雑なフォームの jotai 設計 / Designing jotai(state) for Complex Forms #layerx_frontend
izumin5210
6
1.5k
ニーリーQAのこれまでとこれから
nealle
2
160
Fiber Scheduler vs. General-Purpose Parallel Client
hayaokimura
1
290
Featured
See All Featured
Rebuilding a faster, lazier Slack
samanthasiow
81
9k
Six Lessons from altMBA
skipperchong
28
3.7k
The Power of CSS Pseudo Elements
geoffreycrofte
75
5.8k
Code Reviewing Like a Champion
maltzj
523
40k
YesSQL, Process and Tooling at Scale
rocio
172
14k
Adopting Sorbet at Scale
ufuk
76
9.3k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
41
2.3k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
Build The Right Thing And Hit Your Dates
maggiecrowley
35
2.7k
Transcript
Electron Ͱ Slack Λ͞Βʹศརʹͪ͠Ό͏ @blue_1617
ࢲ୭ʁ blue (@blue_1617) https://blue0513.github.io/show_room/ 2 Rails, JavaScript, Scala etc ΤϜεϦʔ:
ΫϥυిࢠΧϧςνʔϜॴଐ GitHubͱ͔ ‣ slackdeck-proto : Slack ͷ TweetDeck ෩ Viewer ‣ minideck : TweetDeck ͷ͍͍ײ͡ͷ Viewer ‣ phantom-inline-comment: Emacs ͷ package ‣ point-history: Emacs ͷ package ‣ instant-maximized-window: Emacs ͷ package
͜ͷൃදʁ 3 Slack Λৗతʹ͏ΤϯδχΞ͕ ۀޮΛ্͛ΔͨΊʹ Slack Λศརʹ͢Δ https://github.com/blue0513/slackdeck-proto https://qiita.com/blue0513/items/94f719b8c714eb4283b6 https://speakerdeck.com/blue0513/slackdeck-proto
Qiita: TweetDeck ෩ Slack Viewer Λ࡞ͬͯΈͨ GitHub: SlackDeck-Proto M3 TechTalkʢࣾLTʣ: Slack Λ TweetDeck ʹͯ͠Έͨ݅
ΈΜͳɺTwitter ͖ͩΖʁ 4
ΈΜͳɺTwitter ͖ͩΖʁ 5 Ұཡੑʹ͚ܽΔ͔ʁ
TweetDeck ࠷ߴͩͥʁ 6
TweetDeck ࠷ߴͩͥʁ 7 ֤ΫϥελຖʹΧϥϜΛΘ͚ͯදࣔͰ͖Δ ‣ Ұཡੑ Λ୲อͭͭ͠ɺใΛ ཧ Ͱ͖Δ
ΈΜͳɺSlack ͖ͩΖʁ 8 ‣ ๛ͳϦΞΫγϣϯ ‣ εϨουػೳ ‣ ֤छγϣʔτΧοτ ‣
ଞΞϓϦͱͷ౷߹ ‣ etc ... etc ... ۀޮԽͩͥˑ
ΈΜͳɺSlack ͖ͩΖʁ 9 ‣ νϟϯωϧͷ૿Ճ ‣ ෳಉ࣌ฒߦͰਐΉٞ ‣ ผνϟϯωϧ͔Βϝϯγϣϯ ͋ͬ
ΈΜͳɺSlack ͖ͩΖʁ 10 Ұཡੑʹ͚ܽΔͷ͕Ͱʁ
11 Slack ҰཡੑΑͨ͘͘͠ͳ͍ʁ TweetDeck ෩ͳ Viewer Λ ࡞Ε͍͍ͷͰʁ
12 Slack ҰཡੑΑͨ͘͘͠ͳ͍ʁ TweetDeck ෩ͳ Viewer Λ ࡞Ε͍͍ͷͰʁ ఱ࠽తൃ
13 https://github.com/blue0513/slackdeck-proto ࡞ͬͯΈͨ ~ SlackDeck Proto ~
14 https://github.com/blue0513/slackdeck-proto ࡞ͬͯΈͨ ~ SlackDeck Proto ~
ىಈɾ࣮ߦ 15 ‣ ΞϓϦ൛ʢmacOS, Windowsʣ ‣ CUI ىಈ $ npm
install $ npm start
16 ߏཁૉ Electron (Vanilla JS)
17 ߏཁૉ Webview, Custom CSS
18 ߏཁૉ ‣ src/* ߦ: 687ߦ ‣ ओͳґଘ package ‣
electron-builder (Ϗϧυ༻) ‣ electron-store (ઃఆอଘ༻) ‣ Slack API: ඇ༻ ‣ Linter: ESLint ‣ CI: GitHub Actions w/ Jest, ESLint ‣ Liter, CI
19 ػೳ ‣ Multiple columns like TweetDeck ‣ Multiple workspaces
‣ Add/Remove columns by button ‣ Selectable CSS styles for each column ‣ Customizable settings as JSON ‣ Settings are saved and persisted
20 Multiple columns like TweetDeck
21 Multiple workspaces
22 Add/Remove columns by button
23 Selectable CSS styles for each column
24 Customizable settings as JSON ‣ Main Slack URL ‣
Other Workspaces URL ‣ Column Settings
25 Settings are saved and persisted ΞϓϦ൛Ͱ settings.json ΛΠϯϙʔτ͢Δͱ ࣍ճىಈ࣌ͦͷઃఆΛҾ͖ܧ͙
26 ͱ͔৭ʑ ͳͥ API Λ༻͠ͳ͍ͷʁ ͳͥ React ͱ͔ FW ΛΘͳ͔ͬͨͷʁ
ͳͥϝϯςφϯεΛଓ͚Δͷʁ ‣ API ͷมߋʹΑΔϝϯςφϯε͕໘ͩͬͨ ‣ ެࣜ Web ൛Λ Electron & Webview ͢Δͷָ͕ͩͬͨ ‣ FW Λ͏ͱ PR Λग़͢ϋʔυϧ্͕͕Δͱࢥͬͨ ‣ Webview ͷදࣔҎ֎Λ΄΅͠ͳ͍ͷͰɺࢫຯ͕গͳ͍ ‣ ϝϯςφϯε͕໘ͳͷͰɺґଘΛ࠷খԽ͔ͨͬͨ͠ ‣ յΕͨΓෆศͩͱɺʑͷۀʹࢧো͕ग़ΔͷͰ......