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
Gatsby.jsとCloud Functionsで毎週自動でコンテンツが更新され続けるフレー...
Search
kikunantoka
October 04, 2019
Technology
1
2.4k
Gatsby.jsとCloud Functionsで毎週自動でコンテンツが更新され続けるフレームワーク比較サイトを作った話 / gotanda_js_13
kikunantoka
October 04, 2019
Tweet
Share
More Decks by kikunantoka
See All by kikunantoka
個人開発しているサービスのインフラをAWSからGCPに載せ替えた話 💪 / kojin_kaihatsu_night_3
kikunantoka
0
1.1k
Gatsby.jsとCloud Functionsで毎週自動でコンテンツが更新され続けるフレームワーク比較サイトを作った話 / frontend_night_1
kikunantoka
3
1.6k
サービスがゼロからN億円規模になるまに実践した7つのやっていき / 7_yatteiki_battle_conference_u30_2019
kikunantoka
1
1.3k
Gatsby.jsとNetlifyとの付き合い方 / gatsby-js-and-netlify
kikunantoka
3
590
Gatsby.jsで導入事例をバシバシ読めるSPAなLPを作った話 / gatsby-js-for-biz-lp
kikunantoka
2
660
Gatsby.jsで導入事例をバシバシ読めるSPAなLPを作った話 / gatsby-js-for-biz-lp
kikunantoka
1
1.8k
今日から始める Flood.io / fuka-taisaku-night-01
kikunantoka
0
320
20万RPMを捌くRailsアプリケーションの作り方
kikunantoka
0
810
MVPに絞ったら個人開発でもちゃんとリリースできた話
kikunantoka
1
520
Other Decks in Technology
See All in Technology
開発生産性を組織全体の「生産性」へ! 部門間連携の壁を越える実践的ステップ
sudo5in5k
3
7.5k
スタートアップに選択肢を 〜生成AIを活用したセカンダリー事業への挑戦〜
nstock
0
260
Contributing to Rails? Start with the Gems You Already Use
yahonda
2
110
QuickSight SPICE の効果的な運用戦略~S3 + Athena 構成での実践ノウハウ~/quicksight-spice-s3-athena-best-practices
emiki
0
120
ABEMAの本番環境負荷試験への挑戦
mk2taiga
4
310
Coinbase™®️ USA Contact Numbers: Complete 2025 Support Guide
officialcoinbasehelpcenter
0
460
ソフトウェアテストのAI活用_ver1.25
fumisuke
1
230
Rethinking Incident Response: Context-Aware AI in Practice
rrreeeyyy
1
130
タイミーのデータモデリング事例と今後のチャレンジ
ttccddtoki
6
2.5k
FOSS4G 2025 KANSAI QGISで点群データをいろいろしてみた
kou_kita
0
410
American airlines ®️ USA Contact Numbers: Complete 2025 Support Guide
airhelpsupport
0
390
AWS認定を取る中で感じたこと
siromi
1
210
Featured
See All Featured
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
22k
Art, The Web, and Tiny UX
lynnandtonic
299
21k
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
5.9k
Rails Girls Zürich Keynote
gr2m
95
14k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
6
310
Faster Mobile Websites
deanohume
307
31k
How to Ace a Technical Interview
jacobian
278
23k
Transcript
Gatsby.jsͱCloud FunctionsͰ ຖिࣗಈͰίϯςϯπ͕ߋ৽͞Εଓ͚Δ ϑϨʔϜϫʔΫൺֱαΠτΛ࡞ͬͨ Gotanda.js #13on 2019/10/04 @kikunantoka
ࣗݾհ about: name: Fumitaka Kikukawa work_at: giftee Inc. twitter: @kikunantoka
job: software engineer // ීஈRailsΛ৮͍ͬͯ·͢ // ॊΒ͔ΊͳΦϊΛ͓ئ͍͠·͢ //ʢࢦఠ͍͖͍ͯͨͩͨ͠Ͱ͢ ʣ
giftee Inc, in Gotanda
ʮGatsby.jsʯ ͬͯͬͯ·͔͢ʁ ?
• ੩తαΠτδΣωϨʔλ • React Ͱॻ͚Δ • SPAͳ੩తαΠτΛੜͰ͖Δ • StaticGen ΛݟΔݶΓɺ࠷ۙϗοτͳٕज़
None
None
ϗεςΟϯά • NetlifyΛ͏ͱGatsby.jsͰ࡞ͨ͠੩తαΠτΛ؆୯ʹϗεςΟϯάͰ͖Δ
Gatsby.jsͰݸਓͷϒϩάΛ࡞ͬͨ https://kikunantoka.com
Gatsby.jsͰۀͰ๏ਓ͚LPΛ࡞ͬͨ https://giftee.biz
Gatsby.jsͰۀͰ๏ਓ͚LPΛ࡞ͬͨ https://speakerdeck.com/kikunantoka/
Gatsby.js x Netlify ศར !
͜ͷΈ߹ΘͤͰԿ͔໘ന͍͜ͱ͕Ͱ͖ͳ͍͔ • GitHubͷϦϙδτϦʹPush͢ΔͱɺNetlifyͰBuild͕ΓɺσϓϩΠͯ͘͠Εͯί ϯςϯπ͕ߋ৽͞ΕΔ • GitHubͷAPIΛୟ͍ͯɺίϛοτͤ͞Εɺߋ৽ΛࣗಈԽͰ͖ΔͷͰ
͜ͷΈ߹ΘͤͰԿ͔໘ന͍͜ͱ͕Ͱ͖ͳ͍͔
͜Εͩ !
Gatsby.jsͱCloud FunctionsͰ ຖिࣗಈͰίϯςϯπ͕ߋ৽͞Εଓ͚Δ ϑϨʔϜϫʔΫൺֱαΠτΛ࡞ͬͨ ϑϩϯτΤϯυ Night #1on 2019/09/04 @kikunantoka
͜Μͳײ͡ͷϓϩτλΠϓΛ࡞ͬͨ
γεςϜߏ 0 10 * * 1 ᶃ ϑϨʔϜϫʔΫͷ ϦϙδτϦҰཡΛऔಘ ᶄ
GitHub APIΛୟ͍֤ͯϦϙδτϦͷ ελʔͳͲͷσʔλΛऩू ᶅ σʔλΛYamlϑΝΠϧʹ·ͱΊͯ kikunantoka/framework-mania ʹPush ᶆ PushΛhookͯ͠ɺbuild & deploy ᶇίϯςϯπ͕ߋ৽͞ΕΔ
Cloud Functions for Firebase • αʔόϨεͰJSͷؔΛ࣮ߦͰ͖ΔαʔϏε • JSͰTSͰॻ͚Δ • FunctionΛੜ͢Δ࣌ʹࢦఆͰ͖Δ
Cloud Functions for Firebase • ఆظ࣮ߦ͕Ͱ͖Δ • CronܗࣜͰࢦఆ͢Δ͚ͩʢຖि݄༵10࣌ʣ exports.scheduledFunctionCrontab =
functions.pubsub .schedule("0 10 * * 1”) .timeZone("Asia/Tokyo") .onRun(() => { return 0 })
σϞ
γεςϜߏ 0 10 * * 1 ᶃ ϑϨʔϜϫʔΫͷ ϦϙδτϦҰཡΛऔಘ ᶄ
GitHub APIΛୟ͍֤ͯϦϙδτϦͷ ελʔͳͲͷσʔλΛऩू ᶅ σʔλΛYamlϑΝΠϧʹ·ͱΊͯ kikunantoka/framework-mania ʹPush ᶆ PushΛhookͯ͠ɺbuild & deploy ᶇίϯςϯπ͕ߋ৽͞ΕΔ
σϞ
γεςϜߏ 0 10 * * 1 ᶃ ϑϨʔϜϫʔΫͷ ϦϙδτϦҰཡΛऔಘ ᶄ
GitHub APIΛୟ͍֤ͯϦϙδτϦͷ ελʔͳͲͷσʔλΛऩू ᶅ σʔλΛYamlϑΝΠϧʹ·ͱΊͯ kikunantoka/framework-mania ʹPush ᶆ PushΛhookͯ͠ɺbuild & deploy ᶇίϯςϯπ͕ߋ৽͞ΕΔ
σϞ
γεςϜߏ 0 10 * * 1 ᶃ ϑϨʔϜϫʔΫͷ ϦϙδτϦҰཡΛऔಘ ᶄ
GitHub APIΛୟ͍֤ͯϦϙδτϦͷ ελʔͳͲͷσʔλΛऩू ᶅ σʔλΛYamlϑΝΠϧʹ·ͱΊͯ kikunantoka/framework-mania ʹPush ᶆ PushΛhookͯ͠ɺbuild & deploy ᶇίϯςϯπ͕ߋ৽͞ΕΔ
σϞ
σϞ
γεςϜߏ 0 10 * * 1 ᶃ ϑϨʔϜϫʔΫͷ ϦϙδτϦҰཡΛऔಘ ᶄ
GitHub APIΛୟ͍֤ͯϦϙδτϦͷ ελʔͳͲͷσʔλΛऩू ᶅ σʔλΛYamlϑΝΠϧʹ·ͱΊͯ kikunantoka/framework-mania ʹPush ᶆ PushΛhookͯ͠ɺbuild & deploy ᶇίϯςϯπ͕ߋ৽͞ΕΔ
σϞ
γεςϜߏ 0 10 * * 1 ᶃ ϑϨʔϜϫʔΫͷ ϦϙδτϦҰཡΛऔಘ ᶄ
GitHub APIΛୟ͍֤ͯϦϙδτϦͷ ελʔͳͲͷσʔλΛऩू ᶅ σʔλΛYamlϑΝΠϧʹ·ͱΊͯ kikunantoka/framework-mania ʹPush ᶆ PushΛhookͯ͠ɺbuild & deploy ᶇίϯςϯπ͕ߋ৽͞ΕΔ
σϞ
͜ͷγεςϜߏʹର͢Δ͍ • ͍ͬͯΔͷJS͚ͩ • ͷΓସ͑ίετ͕গͳ͍
͜ͷγεςϜߏʹର͢Δ͍ • ϝσΟΞͱͯ͠ɺߋ৽ස͕1िؒʹ1ճఔͰྑ͍ • ຖճAPIΛୟ͘ඞཁ͕ͳ͍ • APIͷ݁ՌΛΩϟογϡ͢Δʁ • ιʔεΛॻ͖͑Δํ๏Ͱྑ͍ͷͰ •
APIΛୟ͔ͳ͍ͷͰɺඳը͕ૣ͍
͜ͷγεςϜߏʹର͢Δ͍ • ΄΅ແྉͰӡ༻Ͱ͖Δ • ์ஔ͍ͯͯ͠େৎ • Ϟνϕʔγϣϯ͕อͯΔ • ݸਓ։ൃͱͯ͠ɺ͚ͬ͜͏େࣄ
։ൃͷ͋Ε͜Ε
GitHub APIʹ͍ͭͯ • JSΫϥΠΞϯτެࣜͷͷΛ͏ͱྑ͍ • https://github.com/octokit/rest.js • υΩϡϝϯτ͕গ͠ݕࡧͮ͠Β͍
ࠓޙͷల • ʮLatest commit XX daysʯग़͍ͨ͠ • 1िؒͷࠩΛऔΓ͍ͨ • Starͷ৳ͼͳͲ
• FireStoreʹຖिͷஅ໘σʔλΛੵ͍ͯͬͯ͠ɺࠩΛग़͢
ࠓޙͷల • ଞͷϑϨʔϜϫʔΫ/ϥΠϒϥϦͷςʔϚ·ͱΊ͍ͨ • React UI Component Framework • Vue
UI Component Framework • ϥΠϒϥϦʢmoment.js, day.jsʣͷൺֱ • ͜ΜͳςʔϚ͕ྑ͍ͷͰɺͱ͍͏Ҋ͕͋Εɺͥͻ࠙ձͰ
None
ίϚʔγϟϧ - We are hiring !!!