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
Nuxt.js + Firebase
Search
jacoyutorius
February 14, 2018
Technology
0
250
Nuxt.js + Firebase
Hamamatsu.rb #83にて、Nuxt.jsについて簡単に紹介したLT資料。
jacoyutorius
February 14, 2018
Tweet
Share
More Decks by jacoyutorius
See All by jacoyutorius
AWS SAM × Ruby で快適に Lambdaファンクションを開発するためのいくつかのTips
jacoyutorius
0
120
Amplify Gen 2 Authentication では Cognito IdentityPool のみでのゲストユーザーへの認可ができない件
jacoyutorius
0
190
kamalでRailsアプリを Amazon Lightsailにデプロイするぞ!
jacoyutorius
0
400
オープンデータとAWSで作っている 浜松市イベントカレンダー
jacoyutorius
0
310
浜松市オープンデータを使ってイベントカレンダーアプリを作りました
jacoyutorius
0
100
Amplifyアプリを 任意のタイミングでデプロイするぞ!
jacoyutorius
1
490
AWS Amplify で翻訳アプリを作った話とAmplifyからカジュアルにCloudWatchLogsにログを送る方法について
jacoyutorius
1
1.5k
AWS App Runner + copilot cli
jacoyutorius
1
1.3k
AWS App Runner + Copilot CLI
jacoyutorius
0
99
Other Decks in Technology
See All in Technology
RGBに陥らないために -プロダクトの価値を届けるまで-
righttouch
PRO
0
120
Physical AI on AWS リファレンスアーキテクチャ / Physical AI on AWS Reference Architecture
aws_shota
1
170
俺の/私の最強アーキテクチャ決定戦開催 ― チームで新しいアーキテクチャに適合していくために / 20260322 Naoki Takahashi
shift_evolve
PRO
1
460
ADK + Gemini Enterprise で 外部 API 連携エージェント作るなら OAuth の仕組みを理解しておこう
kaz1437
0
220
ThetaOS - A Mythical Machine comes Alive
aslander
0
210
Embeddings : Symfony AI en pratique
lyrixx
0
360
スケールアップ企業でQA組織が機能し続けるための組織設計と仕組み〜ボトムアップとトップダウンを両輪としたアプローチ〜
qa
0
350
Phase01_AI座学_基礎
overflowinc
0
4.4k
The essence of decision-making lies in primary data
kaminashi
0
120
Zephyr(RTOS)でOpenPLCを実装してみた
iotengineer22
0
140
Cursor Subagentsはいいぞ
yug1224
2
110
AIエージェント時代に必要な オペレーションマネージャーのロールとは
kentarofujii
0
160
Featured
See All Featured
Color Theory Basics | Prateek | Gurzu
gurzu
0
260
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
0
250
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
280
The Invisible Side of Design
smashingmag
302
51k
Darren the Foodie - Storyboard
khoart
PRO
3
3k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
2.6k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
160
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
180
Optimising Largest Contentful Paint
csswizardry
37
3.6k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
1.9k
Transcript
Nuxt.js + Firebase Hamamatsu.rb @jacoyutorius
yuto ogi @jacoyutorius { language: [“ruby”, “javascript”], interested_in: [ “alexa
skills”, “vuex” ] }
Nuxt.js + Firebase ؒʹ߹Θͳ͔ͬͨ
࡞ͬͨͷ IUUQpSFLQUZVUPPHJDPN
Firekpt w7VFKT/VYUKT w ࠓओʹ͢͜ͱ w7VFY w ҰԠࠓ͢͜ͱ w'JSFCBTF w 'JSFCBTFͷ3FBMUJNF%BUBCBTFΛ
͍ͬͯΔͷͰɺଞϢʔβʔͷೖྗ༰ ͕ϦΞϧλΠϜʹө͞ΕΔ w#VMNB w 6* w Ϩεϙϯγϒ
Stack w7VFKT/VYUKT w ࠓओʹ͢͜ͱ w7VFY w ҰԠࠓ͢͜ͱ w'JSFCBTF w 'JSFCBTFͷ3FBMUJNF%BUBCBTFΛ͍ͬͯΔͷͰɺ
ଞϢʔβʔͷೖྗ༰͕ϦΞϧλΠϜʹө͞ΕΔ w#VMNB w 6* w Ϩεϙϯγϒ
– Nuxt.js ͡Ίʹ (https:/ /ja.nuxtjs.org/guide/) “201610݄25 zeit.co ͷνʔϜ͕ React ΞϓϦέʔγϣϯΛαʔόʔαΠυϨϯμϦϯά͢Δ
ͨΊͷϑϨʔϜϫʔΫ Next.js Λൃද͠·ͨ͠ɻͦͯͦ͠ͷൃද͔ΒΘ͔ͣ࣌ؒޙɺNext.js ͱ ಉ͡ΓํͰɺ͔͠͠ࠓ Vue.js ΛαʔόʔαΠυϨϯμϦϯά͢ΔΞϓϦέʔγϣϯΛߏங͢ ΔΞΠσΟΞ͕ੜ·Ε·ͨ͠ɻ͢ͳΘͪ Nuxt.js ͷੜͰ͢ɻ”
Nuxt.js w 7VFKT༻ͷαʔόʔαΠυϨϯμϦϯά 443 ༻ϑϨʔϜϫʔΫ w 443ඞਢͰͳ͘ɺΦϓγϣϯʹΑͬͯ41"ͷߏஙՄೳ w ࠓճ࡞ͬͨΞϓϦέʔγϣϯͰ443͍ͯ͠ͳ͍
Nuxt.js w 7VFKT7VF3PVUFS7VFY8FCQBDL#BCFM͕ΈࠐΈࡁ Έ w ໘ͳઃఆ͕ෆཁ w lWVFJOJUz͔ΒఔͰॳظը໘͕ىಈ͢Δ w ॳΊͯSBJMT৮ͬͨͱ͖ͷخ͠Έ
w ։ൃ༻αʔόʔϗοτϦϩʔσΟϯάػೳ͖ w &4ελΠϧͷKTͰίʔσΟϯάΛ࢝ΊΒΕΔ
Nuxt.js w ੩త)5.-ΛੜͰ͖ΔͷͰɺ4(JUIVCQBHFTσϓϩΠͰ͖Δ w )FSPLVͱ͔ʹσϓϩΠͰ͖Δ
$ vue init nuxt-community/starter-template my-first-nuxt-app $ cd my-first-nuxt-app $ yarn
install $ yarn dev initialize
$ tree ~/Work/nuxt/my-first-nuxtjs-app -L 2 ᵓᴷᴷ README.md ᵓᴷᴷ assets ᴹ
ᵋᴷᴷ README.md ᵓᴷᴷ components ᴹ ᵓᴷᴷ AppLogo.vue ᴹ ᵋᴷᴷ README.md ᵓᴷᴷ layouts ᴹ ᵓᴷᴷ README.md ᴹ ᵋᴷᴷ default.vue ᵓᴷᴷ middleware ᴹ ᵋᴷᴷ README.md ᵓᴷᴷ nuxt.config.js ᵓᴷᴷ package.json ᵓᴷᴷ pages ᴹ ᵓᴷᴷ README.md ᴹ ᵋᴷᴷ index.vue ᵓᴷᴷ plugins ᴹ ᵋᴷᴷ README.md ᵓᴷᴷ static ᴹ ᵓᴷᴷ README.md ᴹ ᵋᴷᴷ favicon.ico ᵋᴷᴷ store ᵋᴷᴷ README.md w TUBSUFSUFNQMBUFΛ͏ͱ࠷ݶͷઃఆϑΝΠ ϧͱσΟϨΫτϦ͕ੜ͞ΕΔ w Ͳ͜ʹԿΛஔ͖͔ܾ͘Ίͯ͘Ε͍ͯΔͷҙ֎ ͱॿ͔Δ w ͋ͪͪ͜ʹ3&"%.&͕͋Δͷअຐ͚ͩͲɺ ͦͷσΟϨΫτϦͷ༻్͕ॻ͍ͯ͋Δ w WVFSPVUFS͕ઃఆࡁΈͳͷͰɺQBHFTԼʹ σΟϨΫτϦϑΝΠϧΛஔ͚ͩ͘ͰϧʔςΟϯά ͕ఆٛ͞ΕΔ
Vuex w 7VFKT༻ͷঢ়ଶཧύλʔϯ ϥΠϒϥϦ w 'MVY3FEVY͔ΒӨڹΛड͚͍ͯΔ w ݫີʹ'MVYͱҧ͏ͬΆ͍ w ʰ7VFKT.77.Ͱ͋Δʱʰ'MVY.77.Ͱͳ͍ʱʰ7VFKT'MVYͰͳ͍ʱతͳɻ
͍͔ͭʰ͓લͷ'MVYਅͷ'MVY͡ΌͶ͐ʱతͳهࣄ͕ग़͖ͯͦ͏ w ΞʔΩςΫνϟͷ͋Δ͖ͱΓ͋͑ͣஔ͍͓͍ͯͯɺϑϨʔϜϫʔΫ͕ ਪ͢Δઃܭʹͬͯίʔυ͕៉ྷʹ࣮Ͱ͖ΕͦΕͰྑ͍ͷͰͱ͍͏ ํ
w l4UBUFzάϩʔόϧͳσʔλετΞ w σʔλͷঢ়ଶΛཧ͢Δz4UBUFz͕͋Γɺ ঢ়ଶΛมߋ͢Δૢ࡞Λ͢Δz"DUJPOTz z.VUBUJPOTzɺ7VF$PNQPOFOUT "DUJPO.VUBUJPOΛݺͼग़͢͜ͱͰ ঢ়ଶͷૢ࡞Λ͢Δ w ˞ωοτͰݟ͔͚ΔαϯϓϧίʔυͰɺ
.VUBUJPOTΛͬ͢ඈͯ͠"DUJPOT͔Β4UBUFΛ มߋ͍ͯ͠Δͷ͋Γɺࠞཚͯ͠Δ Vuex
ࡶͳײ w &4ͷॻ͖ํΛ͖ͪΜͱ͍֮͑ͯͳ͍ʢλΠϙͰϋϚΔʣ w 7VFYͲ͏͍͏ઃܭʹ͖͔͍͢͠ ಛʹNVUBUJPOͱBDUJPOͷ͍͚ w ͍ͭͰʹɺBTZODBXBJUͱQSPNJTFʹ͍ͭͯཧղ͢Δඞཁ͋Γ w
JOJU͢Δͱɺॳظϖʔδ QBHFTJOEFYWVF ͕ੜ͞ΕΔͷͰɺ͜ΕΛ͍͡Γͳ͕Βษڧ͢Δͱ͍ ͍ͧɻɻ w ͱΓ͋͑ͣɺQBHFTJOEFYWVFͰΰϦΰϦॻ͍͍ͯͬͯɺ͋ͱ͔ΒDPNQPOFOUʹׂͨ͠Γɺ 7VFYͰσʔλϑϩʔΛ៉ྷʹͨ͠Γ͢Ε͍͍ͱࢥ͏ɻɻɻ w ํσʔλόΠϯσΟϯάʹ׳ΕΔͱ͏ʮ lJEz WBM ʯͱ͔ʹΕͳ͍ w $ISPNF'JSFGPYͷ7VF%FWFMPQQFS5PPMTΛೖΕΔͱͤ w 443ͱ͔Ζ͏ͱ͢Δͱ·ͨপʹϋϚΓͦ͏
DESIGN EVO IUUQTXXXEFTJHOFWPDPN