Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
天下一 静的サイトホスティング 武道会 / World Static Site Hosting...
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
did0es
February 07, 2020
Technology
430
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
天下一 静的サイトホスティング 武道会 / World Static Site Hosting Tournament
did0es
February 07, 2020
More Decks by did0es
See All by did0es
【前編】このAPIいつ使うん?あの機能なに?V8のドキュメント、全部読んでみた
shuta13
0
160
TypeScript Compiler APIとPHP-Parserを活用し、TypeScriptとPHPで型を共有する
shuta13
1
1k
ブラウザの投機的読み込みと投機ルールAPIを理解し、Webサービスのパフォーマンスを最適化する
shuta13
3
400
うわっ...私のSwagger、古すぎ...?grpc-gateway向けのSwaggerと向き合う
shuta13
0
230
ViteとTypeScriptのProject Referencesで 大規模モノレポのUIカタログのリリースサイクルを高速化する
shuta13
3
400
歴代のWeb Speed Hackathonの出題から考えるデグレしないパフォーマンス改善
shuta13
8
940
Reconciliationの世界
shuta13
0
31
なぜクラウドサービスで Web コンソールを提供するのか
shuta13
4
2.5k
5分でわかるPreactのVDOMで作るWebエディタ
shuta13
0
290
Other Decks in Technology
See All in Technology
Futexes the good, the bad, the ugly
ennael
PRO
0
130
2026-10-01_MagicPod_QAハーネスエンジニアリングとQA組織の未来像
ynisqa1988
1
550
今こそ知りたいAmplifyGen2
mkdev10
2
160
生成AIで高い生産性を求められて、 悩み、乗り越えた話
mot_techtalk
2
130
事業活動を AI Ready にする攻めと守りのデータエンジニアリング / data-engineering-for-ai-ready-business
pei0804
5
1.9k
【データ横丁主催】AI Agentがコンテキストを使って仕事をした後、何が残るのか― 組織の経験を次の判断に引き継ぐ「Agent Memory」
shisyu_gaku
2
340
継続的なAIコスト最適化
bgpat
1
200
インバスケット試験対策アプリを 作って見えたAIエージェント構築 ナレッジ2選
shichijoyuhi
1
130
React Nativeでの OTA Updateって、 どう説明する?
ichiki1023
0
150
Deep Data Security 機能解説
oracle4engineer
PRO
2
720
freeeらしさをAIとともに作る / Creating the freee Experience with AI
ymrl
0
210
ログラスのマルチプロダクトを 支える認証基盤 〜テナントごとに異なる統制とどう向き合うか〜
dada4386
3
410
Featured
See All Featured
How to Talk to Developers About Accessibility
jct
2
560
How to build a perfect <img>
jonoalderson
1
6.1k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.7k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
3k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
550
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
2
460
The Limits of Empathy - UXLibs8
cassininazir
2
710
Become a Pro
speakerdeck
PRO
31
6.3k
Mobile First: as difficult as doing things right
swwweet
225
10k
Code Review Best Practice
trishagee
74
20k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
350
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
790
Transcript
ఱԼҰ੩తαΠτϗεςΟϯάಓձ UBNCPVSJOFJOD.FFU6Q גࣜձࣾλϯόϦϯΤϯδχΞΞϧόΠτ ฏҪඔଠ TIVUB
XIPBNJ ฏҪඔଠ TIVUB ͬͯΔ8FCϑϩϯτΤϯυΤϯδχΞɾσβΠφʔɾେֶੜ EJEFTNF!EJEFT
͜͏͍͏͜ͱͬͯ·͢ ɾ1PEDBTU։ൃ ɾ4MBDL#PU։ൃ ɾ8FCدΓͷҊ݅ॾʑʜ
ࠓ͢͜ͱ
ͱ͋Δ-5ͷϦεϖΫτΛ͍͖ͬͯ·͢ ͱ͋Δ-5 IUUQTTQFBLFSEFDLDPNQDI@KQXPSMEEFWTFSWFSUPVSOBNFOU
ఱԼҰ੩తαΠτϗεςΟϯάಓձ
ࢀՃࢿ֨ ੩తαΠτΛϗεςΟϯάͰ͖Δ
બखೖ
/P ;FJU/PX
/P (PPHMF"QQ&OHJOF
/P /FUMJGZ
/P 'JSFCBTF)PTUJOH
ิ "844 (PPHMF$MPVE4UPSBHF ͷ͓ࡒ͕ා͍ͷͰ༧બམͪͰ͢
ධՁํ๏ ɾ$*$%ͷΈ͢͞ ɾઃఆ͢͠͞ ɾͦͷଞ ɾΘ͔Γ͢͞ ίϚϯυͷ͞ ɾ(JU)VC͔ΒσϓϩΠ ͦΕͧΕຬͷܭຬͰ͢ ɾͦͷଞ
ճઓઃఆ͢͠͞
̍ճઓϗεςΟϯάͷઃఆ͕ Γ͍͔͢Ͳ͏͔ͷൺֱͰ͢
/VYUKT /FYUKTͷαΠτΛ ϗεςΟϯάΛ͢ΔલఏͰ͖ͬͯ·͢
ͦΕͧΕϗεςΟϯάͯ͠Έͯ Θ͔Γ͢͞ɺखܰ͞Λಘʹ͍͖ͯ͠·͢
/P ;FJU/PX ɾ४උ ɾ(JU)VCͰϩάΠϯ$-*ͰϩάΠϯ $ yarn global add $ now
άϩʔόϧԚછຊʹਃ͠༁ͳ͍
/P ;FJU/PX ɾ/FYUKT ɾOPXͬͯଧ͚ͭͩʂരʂ $ now ɾΑ͔ͬͨͶ
/P ;FJU/PX ɾ/VYUKT ɾOPXKTPOʹઃఆ͕ඞཁ W ɾ͋ͱOVYUΛJHOPSFOPXͬͯଧ͚ͭͩʂരʂ
/P ;FJU/PX ɾOPXͬͯଧ͚ͭͩͰ͍͍ ɾจࣈͳͷͰ͍֮͑͢ɺ ɾ ΄΅ θϩίϯϑΟά ɾͦ͏ͩͶɺ ɾ߹ܭ
/P (PPHMF"QQ&OHJOF ɾ४උ ɾ($1ʹϩάΠϯ ొ 4%,Πϯετʔϧ ɾ4%,μϯϩʔυͯ͠JOTUBMMTIΛ࣮ߦ ɾΊΜͲ͍͚͘͞ͲؤுΔ
/P (PPHMF"QQ&OHJOF ɾ/FYUKT ɾ("&ͰϓϩδΣΫτ࡞Δɺ*%ϝϞΔ $ gcloud init ɾJOJUɺϓϩδΣΫτ*%Λબ
/P (PPHMF"QQ&OHJOF ɾ/FYUKT ɾBQQZBNMΛ࡞
/P (PPHMF"QQ&OHJOF ɾ/FYUKT ɾOQNTDSJQUTͷOFYUTUBSUʹQ͚ͭΔ
/P (PPHMF"QQ&OHJOF ɾ/FYUKT ɾσϓϩΠ $ yarn build && gcloud app
deploy
/P (PPHMF"QQ&OHJOF ɾ/VYUKT ɾ("&ͰϓϩδΣΫτ࡞Δɺ*%ϝϞΔ $ gcloud init ɾJOJUɺϓϩδΣΫτ*%Λબ
/P (PPHMF"QQ&OHJOF ɾ/VYUKT ɾBQQZBNMΛ࡞
/P (PPHMF"QQ&OHJOF ɾ/VYUKT ɾσϓϩΠ $ gcloud app deploy
/P (PPHMF"QQ&OHJOF ɾHDMPVEೖΕΔͷ͕ͪΐͬͱΊΜͲ͍͘͞ ɾೖΕΕޙEPDT௨Γ ɾίϯϑΟάॻ͔ͳ͍ͱ͍͚ͳ͍ ɾ߹ܭ ɾͱΓ͋͑ͣ ɾ·͋ςϯϓϨʔτ͋Δ͍͔ͬ͠ʂ
/P /FUMJGZ ɾ४උ ɾ(JU)VCͰϩάΠϯ
/P /FUMJGZ ɾ/FYUKT ɾOQNTDSJQUTʹFYQPSUΛՃ ɾOVYUHFOFSBUFΈ͍ͨͳίϚϯυͷͣ
/P /FUMJGZ ɾ/FYUKT ɾޙ/FUMJGZଆͷઃఆΛ(6*Ͱϙνϙν
/P /FUMJGZ ɾ/VYUKT ɾ/FUMJGZଆͷઃఆΛ(6*Ͱϙνϙν
/P /FUMJGZ $ yarn global add netlify-cli ɾ༨ஊ ɾOPXΈ͍ͨʹ$-*ͰͰ͖Δɺ͠·ͤΜ͕ʜ $
netlify deploy -d dist # nuxt
/P /FUMJGZ ɾ(6*͕Θ͔Γ͍͢ɺ$-*͠Γ·Μ ɾ͍ɺ ɾ ΄΅ θϩίϯϑΟάOFUMJGZUPNMʹॻ࣌͋͘Δ ɾͦ͏ͩͶɺ ɾ߹ܭ
/P 'JSFCBTF)PTUJOH ɾ४උ ɾ(PPHMFͰϩάΠϯ$-*ͰϩάΠϯ $ yarn global add firebase-tools $
firebase login άϩʔόϧԚછ͜Μʹͪʂ
/P 'JSFCBTF)PTUJOH ɾ/FYUKT ɾެࣜFYBNQMFΛ͏ͷ͕Ұ൪खͬऔΓૣ͍ $ yarn create next-app ―example with-firebase-hosting
<hoge> $ yarn predeploy && yarn deploy ɾσϓϩΠ ɾطଘͷͷΛվम͢Δͱ͖ؤுΓ͕ඞཁ
/P 'JSFCBTF)PTUJOH ɾ/VYUKT $ firebase init ɾJOJU ɾEJTUΛࢦఆ $ yarn
build && yarn generate ɾEJTUͳ͔ͬͨΒੜ
/P 'JSFCBTF)PTUJOH ɾ/VYUKT $ firebase deploy ɾσϓϩΠ ɾOPXͷͪΐͬͱख͔͔ؒΔ൛
/P 'JSFCBTF)PTUJOH ɾOPXΈ͍ͨɻͰίϚϯυ͍ ɾ͏ʔΜɺ ɾ)PTUJOHͷΈͰ݁͠ʹ͍͘߹ଟ͍ ɾ/FYUKTͰ'JSFCBTF'VODUJPOTཁΔ ɾ߹ܭ ɾ·͋ςϯϓϨʔτ͋Δ͍͔ͬ͠ʂ
ճઓ$*$%ͷΈ͢͞
̎ճઓ$*$%ΛύοͱΊΔ͔Ͱ͢
ΈΜͳʙ
ίʔυཧʹԿ͍ͬͯ·͔͢ʁ
(JU)VCͰ͢ΑͶʁ
(JU)VCܦ༝Ͱ$*$%ΛΉ ྲྀΕͰ͍͖·͢
લ४උ ɾ༻πʔϧ(JU)VC"DUJPOT ɾඞཁʹͳͬͨΒ͏ɺZBNMॻ͘ ɾ$*ͰΔ͜ͱ ɾͱΓ͋͑ͣࠓճςετΛΒͤΔ ɾ$%ͰΔ͜ͱ ɾNBTUFSʹQVTI$*ύεͰσϓϩΠ
લ४උ ɾ(JU)VC"DUJPOTʹ͍ͭͯ ɾ6CVOUVMBUFTUίϯςφΛ͏ ɾ/PEFWYΛ͏ ɾ͍ͷͰ͜͜ΒΜͷهड़ը૾͔Βল͍ͯ·͢
ਐΊํ ɾ/FYUKT /VYUKTͰ$*$%Ή ɾઃఆͷΘ͔Γ͢͞ɺख͕ܰ͞ධՁର
/P ;FJU/PX ɾ$*$%४උ ɾ"DUJPOT͍͍͚ͬͯͲҧ͏Γํ ɾΛ͠Α͏ͱ͚ͨ͠Ͳ$%Ίͯ$*Ίͳ͍ ɾͳͷͰ"DUJPOT͏ ɾ/PXͰUPLFOऔಘ͠ͱ͘
/P ;FJU/PX ɾ/VYUKT ɾ;FJU/PX%FQMPZNFOU͕Կނ͔ྃ͠ͳ͍ ɾॿ͚ͯʢٽʣ
/P ;FJU/PX ɾ/FYUKT ɾͱΓ͋͑ͣZBNMॻ͘ɺͰ͖Δɺಈ͘
/P ;FJU/PX ɾ༨ஊ$% ɾEBTICPBSE͔Β(6*ϙνϙνઃఆՄ
/P ;FJU/PX ɾ"DUJPOTࣗମ;FJU/PX%FQMPZNFOU͚ͩͰࡁΉ ɾ$%(6*ͰҰԠઃఆͰ͖Δ ɾؤுͬͯཉ͍͠ͷͰ͋͛Δ ɾ߹ܭ ɾͨͩɺ/VYUKT͕࠷৽ͷ%FQMPZNFOUͰಈ͔ͳ͍
/P (PPHMF"QQ&OHJOF ɾ$*$%४උ ɾ"DUJPOT͍·͢ ɾΒ͔ͯ͠"DUJPOTͷఱҪ͕Έ͑ͨͷͰखॱ͚ͩʜ
/P (PPHMF"QQ&OHJOF ɾ/VYUKT ɾͱΓ͋͑ͣZBNMॻ͘ɺಈ͍ͯ΄͍͠
/P (PPHMF"QQ&OHJOF ɾ/FYUKT ɾͱΓ͋͑ͣZBNMॻ͘ɺಈ͍ͯ΄͍͠
/P (PPHMF"QQ&OHJOF ɾ͏ʔΜɺ ɾHDMPVETFSWJDFLFZKTPOͷѻ͍͕͍͠ ɾ߹ܭ
/P /FUMJGZ ɾ$*$%४උ ɾ"DUJPOT͍͍͚ͬͯͲҧ͏Γํ
/P /FUMJGZ ɾ$* ɾϏϧυίϚϯυʹZBSOUFTUՃ
/P /FUMJGZ ɾUFTUͪΌΜͱQBTTͨ͠ΒσϓϩΠͰ͖ͪΌ͏
/P /FUMJGZ ɾ$% ɾ(6*ϙνϙνͬͯऴΘΓ
/P /FUMJGZ ɾָɺ͋͛ͪΌ͏ ɾ͜ͷఔͳΒγϟοͬͯ(6*ૢ࡞ͰΊΔ ɾͬͺΓ͠ͱ͘ ɾMPHͱ͔ϫʔΫϑϩʔͷݟ࣮͢͞༻ੑՃຯ͢Δͱ ɾ߹ܭ
/P 'JSFCBTF)PTUJOH ɾ$*$%४උ ɾ"DUJPOT͍·͢
/P 'JSFCBTF)PTUJOH ɾ/VYUKT ɾͱΓ͋͑ͣZBNMॻ͘ɺͰ͖Δɺಈ͘
/P 'JSFCBTF)PTUJOH ɾ/FYUKT ɾͱΓ͋͑ͣZBNMॻ͘ɺͰ͖Δɺಈ͘
/P 'JSFCBTF)PTUJOH ɾ"DUJPOTϩʔΧϧͰΔ͜ͱͦͷ··ΒͤΔ ɾͪΌΜͱಈ͍ͯҒ͍ɺ ɾ߹ܭ
ճઓͦͷଞ
̏ճઓͰ͕͍͍Ͷ͏Ε͍͠Ͷ ͱࢥ͏ͱ͜ΖΛڍ͍͖͛ͯ·͢
/P ;FJU/PX ɾͦΕͦ͏ɺ ɾ/FYUKTͱͱͯ૬ੑ͕͍͍Ͱ͢ ɾׂͱ͏Ε͍͠ɺ ɾແྉϓϥϯͳΒແྉ ɾ߹ܭ
/P (PPHMF"QQ&OHJOF ɾͦ͏ͩͶɺ ɾελϯμʔυͳΒແྉͰ৭ʑͰ͖Δ ɾ(PPHMF͞ΜͰ͢ ɾ/PEF͕Wͱ͔Ͱ҆ఆ Β͍͠ ࠓճW ɾ߹ܭ
/P /FUMJGZ ɾ'PSNT ɾ੩తαΠτͰ͓͍߹ΘͤϑΥʔϜͰ͖ͪΌ͏ ɾ͍͢͝ɺ ɾ߹ܭ
/P 'JSFCBTF)PTUJOH ɾैྔ՝ۚͳͷͰ·͋ɺ͏ΜɺΈ͍ͨͳײ͡ ɾͳΜ͔/FUMJGZͱ͔ΑΓؾ࣋ͪૣ͍ ɾͦ͏ͩͶɺ ɾ(PPHMF͞ΜͰ͢ ɾ߹ܭ
݁Ռൃද
/FUMJGZ ;FJU/PX 'JSFCBTF)PTUJOH (PPHMF"QQ&OHJOF
ͱ͍͏͜ͱͰ
ఱԼҰ੩తαΠτϗεςΟϯάಓձ
༏উ/FUMJGZͰ͢
·ͱΊ ɾଞʹ͜Ε͍͍ͧʂ͑ʂʂΈ͍ͨͳͷ͋ͬͨΒ ɹڭ͑ͯԼ͍͞ɺͱ͍͏͔ୈճ։࠵͍ͯͩ͘͠͞ ɾࠓճͷ༏উ/FUMJGZʹܾఆ ɾ͍͢͞ɺػೳͷଟ͞తʹྑ͔ͬͨ ɾ/FYUKT /VYUKTҎ֎Ͱ৭ʑࢼͯ͠ΈͯԼ͍͞
͓ΘΓ