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
個人でPWA対応の時間管理アプリ「Hackaru」を作りました
Search
ktmouk
July 17, 2019
Programming
5
1.2k
個人でPWA対応の時間管理アプリ「Hackaru」を作りました
ktmouk
July 17, 2019
Tweet
Share
Other Decks in Programming
See All in Programming
Chart.jsで長い項目を表示するときのハマりどころ
yumechi
0
160
Building AI Agents with TypeScript #TSKaigiHokuriku
izumin5210
5
1.1k
AIを駆使して新しい技術を効率的に理解する方法
nogu66
1
660
Web エンジニアが JavaScript で AI Agent を作る / JSConf JP 2025 sponsor session
izumin5210
4
2k
OSS開発者の憂鬱
yusukebe
14
11k
All(?) About Point Sets
hole
0
220
乱雑なコードの整理から学ぶ設計の初歩
masuda220
PRO
32
15k
これだけで丸わかり!LangChain v1.0 アップデートまとめ
os1ma
4
120
Vueで学ぶデータ構造入門 リンクリストとキューでリアクティビティを捉える / Vue Data Structures: Linked Lists and Queues for Reactivity
konkarin
1
350
Micro Frontendsで築いた 共通基盤と運用の試行錯誤 / Building a Shared Platform with Micro Frontends: Operational Learnings
kyntk
0
1.6k
dnx で実行できるコマンド、作ってみました
tomohisa
0
110
手軽に積ん読を増やすには?/読みたい本と付き合うには?
o0h
PRO
1
110
Featured
See All Featured
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Music & Morning Musume
bryan
46
7k
Context Engineering - Making Every Token Count
addyosmani
9
420
Building Applications with DynamoDB
mza
96
6.8k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
194
65k
Designing for humans not robots
tammielis
254
26k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.6k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
1
56
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
Transcript
!LUNPVL ݸਓͰ18"ରԠͷ࣌ؒཧΞϓϦ࡞Γ·ͨ͠
wߕ൹༑೭ ,BJ5PNPZVLJ w ݸਓͰ18"ରԠͷ ࣌ؒཧΞϓϦΛ։ൃ͍ͯ͠·͢ɻ w ࠓ݄ ͔ΒϚωʔϑΥʔϫʔυʹೖࣾ
!2 !LUNPVL LUNPVL
!3 ԿΛൃද͢Δͷʁ w࣌ؒཧΞϓϦ)BDLBSVʹ͍ͭͯ w18"Ͱ։ൃͯ͠ྑ͔ͬͨ w18"ͷͭΒΈ
!4 ର w 18"ʹڵຯΛ͍࣋ͬͯΔํ w 18"ͰΞϓϦΛ࡞Ζ͏ͱߟ͍͑ͯΔํ
!5 ԿΛൃද͢Δͷʁ w࣌ؒཧΞϓϦ)BDLBSVʹ͍ͭͯ w18"Ͱ։ൃͯ͠ྑ͔ͬͨ w18"ͷͭΒΈ
!6 ࣌ؒཧͱʁ
!7 ʑΔ͜ͱ͕ࢁ͋Δ ษڧ ࣄ झຯ
!8 ʜ͕ɺࠓԿ͔͍֮ͨ͑ͯ͠ͳ͍ ࠓԿ͚ͬͨͬ
!9 ʜ͕ɺࠓԿ͔͍֮ͨ͑ͯ͠ͳ͍ ࠓԿ͚ͬͨͬ ࣌ؒͷৼΓฦΓ͕͍ͨ͠
!10 )BDLBSV ଌΔ IUUQTXXXIBDLBSVBQQ
!11 ࡞ۀ࣌ؒΛܭଌͯ͠ʜ
!12 άϥϑΧϨϯμʔͰৼΓฦΓ
!13 ࣗͷ࣌ؒͷ͍ํ͕͔Δ
!14 Ͳ͏ͬͯಈ͍͍ͯΔͷʁ
!15 /VYUKT 3BJMT"1*Ͱߏங
!16 ಛ w 8FCIPPL w 0"VUI w Φʔϓϯιʔε w ϚϧνσόΠεରԠ
!17 ಛ w 8FCIPPL w 0"VUI w Φʔϓϯιʔε w ϚϧνσόΠεରԠ
!18 1SPHSFTTJWF8FC"QQT
!19 ͱʁ 8FCαΠτΛɺ ετΞ͔Βμϯϩʔυͨ͠ΞϓϦͷ Α͏ʹ͑Δ͜ͱɻ ಛఆͷٕज़Λ͋ΒΘ໊͢শͰͳ͍
!20 )BDLBSVͷ "OESPJEͷϗʔϜΞΠίϯ J04ͷϗʔϜΞΠίϯ "OESPJEͱJ04ରԠ
!21 ܭଌը໘ ΧϨϯμʔը໘ Ϩϙʔτը໘
!22 ԿΛൃද͢Δͷʁ w࣌ؒཧΞϓϦ)BDLBSVʹ͍ͭͯ w18"Ͱ։ൃͯ͠ྑ͔ͬͨ w18"ͷͭΒΈ
!23 18"ͷྑ͔ͬͨ w؆୯ʹಋೖͰ͖ͨ w1$ͱϞόΠϧͷίʔυΛڞ௨ԽͰ͖ͨ
!24 ؆୯ʹಋೖͰ͖ͨ
!25
!26 ɾ8PSLCPY 4FSWJDF8PSLFS ɾ.BOJGFTU ɾ.FUB ɾ0OF4JHOBM ௨ ʑʜ
!27 ZBSOBEE!OVYUKTQXBͰύοέʔδಋೖ
!28 OVYUDPOpHKTʹϞδϡʔϧΛࢦఆ
!29 TXKT 4FSWJDF8PSLFS ͕ࣗಈੜ͞ΕΔɻ /VYUKTͰɺ 18"ͷಋೖ؆୯ʂ
!30 1$ͱϞόΠϧͷίʔυΛڞ௨ԽͰ͖ͨ
!31 ͦͦɺͳͥ18"Λಋೖͨ͠ͷʁ
!32 ͦͦɺͳͥ18"Λಋೖͨ͠ͷʁ ݸਓ։ൃͰɺJ04"OESPJE1$ͷίʔυΛ ϝϯς͢Δͷେม J04 "OESPJE 1$
!33 ͦͦɺͳͥ18"Λಋೖͨ͠ͷʁ ݸਓ։ൃͰɺJ04"OESPJE1$ͷίʔυΛ ϝϯς͢Δͷେม ࣌ؒΛܭଌදࣔ͢Δͱ͍͏γϯϓϧͳཁ݅ɻ ൃల్্ͷ18"Ͱ࣮Ͱ͖ͦ͏ͱײͨ͡
!34 ࣮ࡍɺԸܙେ͖͔ͬͨ
!35 ϨεϙϯγϒରԠ͢Δ͚ͩͰωΠςΟϒΞϓϦͬΆ͘ɻ 18"൛ 1$൛
!36 ίʔυͱςετΛڞ௨ԽͰ͖ͨɻ
!37 +BWB4DSJQUΛ͑ ωΠςΟϒΞϓϦ෩ͷ6*ɻ w εϫΠϓϝχϡʔ
!38 +BWB4DSJQUΛ͑ ωΠςΟϒΞϓϦ෩ͷ6*ɻ w υϥοάυϩοϓ w εϫΠϓͰϖʔδૹΓ
!39 ԿΛൃද͢Δͷʁ w࣌ؒཧΞϓϦ)BDLBSVʹ͍ͭͯ w18"Ͱ։ൃͯ͠ྑ͔ͬͨ w18"ͷͭΒΈ
!40 18"ͷͭΒΈ wJ04ͷରԠ͕େม
!41 18"ͷͭΒΈ wJ04ͷରԠ͕େม
!42 ྫ$PPLJFͷ
!43 ྫ$PPLJFͷ wϒϥβͱ18"Ͱ$PPLJFΛڞ༗Ͱ͖ͳ͍ wΛ࠶ىಈ͢Δͱফ͑Δ J04 Ҿ༻ʲௐࠪʳ8&#ΞϓϦΛ18"ͱͯ͠ىಈͨ͠߹ʹϒϥβͷ$PPLJF͕Ҿ͖ܧ͕ΕΔ͔֬ೝ͢Δ ˞J04ΑΓલͰΞϓϦΛ࠶ىಈ͚ͨͩ͠Ͱফ͑Δɻ ˞"OESPJEແ͠ɻ
!44 ϩάΠϯঢ়ଶͷอ࣋ͰࠔΔ ΫοΩʔɾηογϣϯ͑ͳ͍
!45 ରԠ-PDBM4UPSBHFΛ͏ τʔΫϯϕʔεͷೝূ
!46 ΞΫηετʔΫϯ +85 ͱ ϦϑϨογϡτʔΫϯͰೝূ WebUI Nuxt.js API Rails5 ϩάΠϯ
(ID, PASS) ϦϑϨογϡτʔΫϯΛฦ͢ ΞΫηετʔΫϯ +85 Λฦ͢ ΞΫηετʔΫϯͰ"1*Λૢ࡞ ϦϑϨογϡτʔΫϯͰ ΞΫηετʔΫϯΛཁٻ wϦϑϨογϡτʔΫϯͰ ΞΫηετʔΫϯΛཁٻͰ͖Δɻ wΞΫηετʔΫϯ͍༗ޮظݶʹઃఆɻ ʙ wϦϑϨογϡτʔΫϯΛ-PDBM4UPSBHF ʹอଘɻ
!47 ྫ"OESPJEʹग़དྷͯ J04ͰͰ͖ͳ͍͜ͱ͕͋Δ
!48 ͨͱ͑ʜ wϓογϡ௨ wϗʔϜը໘ʹՃ ")4 ͷҊʑ
!49 ͨͱ͑ʜ wϓογϡ௨ wϗʔϜը໘ʹՃ ")4 ͷҊʑ
!50 "OESPJEͰ18"ͷҊ͕ग़Δ͚Ͳʜ .JOJJOGPCBS Ҿ༻$IBOHFTUP"EEUP)PNF4DSFFO#FIBWJPS
!51 Ϣʔβ͕18"ΛΔ ํ๏͕༻ҙ͞Ε͍ͯͳ͍ J04ͰԿग़ͳ͍
!52 Ϣʔβ͕18"ΛΔ ํ๏͕༻ҙ͞Ε͍ͯͳ͍ J04ͰԿग़ͳ͍ ࣗલͰ࣮͢ΔͳͲͷରࡦ͕ඞཁ
!53 ͱ͍͑ ͕࣌ؒղܾͯ͘͠ΕΔ͔ʁ
!54 J04Ͱ৭ʑग़དྷΔΑ͏ʹͳͬͨ ΞϓϦϒϥβ 0"VUIೝূ͕Մೳʹ ࠨεϫΠϓͰΔ
!55 J04Ͱ৭ʑग़དྷΔΑ͏ʹͳͬͨ 8FC4IBSF"1*
!56 18"ʹग़དྷΔ͜ͱ͕૿ָ͍͑ͯ͘͠Έ͋Δ কདྷతʹܭଌதόονΛग़ͨ͠Γʜ J04Ͱ௨Λग़ͨ͠Γʜ
!57 ྫʮΔʯϘλϯͲ͏͢Δ
!58 ʮΔʯϘλϯ͕ͳ͍ͷͰɺը໘ભҠ͕ଟ͍ͱࠔΔ ϒϥβͷΔϘλϯ18"Ͱ͑ͳ͍ 18"ͳͷͰɺωΠςΟϒͷ/BWJHBUJPO#BS͑ͳ͍
!59 ରࡦྫࣗલͰʮΔʯϘλϯΛ࣮͢Δ IUUQTKBPOTFOJP ϑϨʔϜϫʔΫ͏ͷ͋Γ͔
!60 ରࡦྫʮΔʯϘλϯ͕ෆཁͳը໘ઃܭʹ )BDLBSVͷը໘ભҠϝχϡʔʹ͋Δ߲ͷΈ ϞʔμϧλϒΛۦͯ͠ը໘Λ࠷খݶʹ
!61 ࣗવͳ6*ͷ18"Λ࡞ΔͳΒ ϞόΠϧϑΝʔετͰ࡞Δͷ͕͓קΊ
!62 J04ʹରԠͤ͞ΔͳΒɺ J04ϑΝʔετ͕͓קΊɻ
!63 ·ͱΊ
!64 ·ͱΊ w18"ͷಋೖͦΜͳʹ͘͠ͳ͍ʂ wJ04͕ΜΕ
!65 18"ͷ੍·ͩଟ͍͚Ͳʜ
!66 ग़དྷΔ͜ͱ͕૿͑Δָ͠Έ͕͋Δ
!67 (JU)VCͰެ։த IUUQTHJUIVCDPNLUNPVLIBDLBSV
!68 ެࣜαΠτ͔ΒͰ͑·͢ IUUQTXXXIBDLBSVBQQ
!69 ͋Γ͕ͱ͏͍͟͝·ͨ͠