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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
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.2k
Gatsby.jsとCloud Functionsで毎週自動でコンテンツが更新され続けるフレームワーク比較サイトを作った話 / frontend_night_1
kikunantoka
3
1.7k
サービスがゼロからN億円規模になるまに実践した7つのやっていき / 7_yatteiki_battle_conference_u30_2019
kikunantoka
1
1.4k
Gatsby.jsとNetlifyとの付き合い方 / gatsby-js-and-netlify
kikunantoka
3
620
Gatsby.jsで導入事例をバシバシ読めるSPAなLPを作った話 / gatsby-js-for-biz-lp
kikunantoka
2
720
Gatsby.jsで導入事例をバシバシ読めるSPAなLPを作った話 / gatsby-js-for-biz-lp
kikunantoka
1
1.9k
今日から始める Flood.io / fuka-taisaku-night-01
kikunantoka
0
340
20万RPMを捌くRailsアプリケーションの作り方
kikunantoka
0
830
MVPに絞ったら個人開発でもちゃんとリリースできた話
kikunantoka
1
540
Other Decks in Technology
See All in Technology
データの整合性を保ちたいだけなんだ
shoheimitani
7
2.7k
セキュリティについて学ぶ会 / 2026 01 25 Takamatsu WordPress Meetup
rocketmartue
1
270
GCASアップデート(202510-202601)
techniczna
0
250
学生・新卒・ジュニアから目指すSRE
hiroyaonoe
2
520
Bill One急成長の舞台裏 開発組織が直面した失敗と教訓
sansantech
PRO
1
190
Meshy Proプラン課金した
henjin0
0
240
茨城の思い出を振り返る ~CDKのセキュリティを添えて~ / 20260201 Mitsutoshi Matsuo
shift_evolve
PRO
1
170
【インシデント入門】サイバー攻撃を受けた現場って何してるの?
shumei_ito
0
1.5k
Amazon S3 Vectorsを使って資格勉強用AIエージェントを構築してみた
usanchuu
3
430
モダンUIでフルサーバーレスなAIエージェントをAmplifyとCDKでサクッとデプロイしよう
minorun365
2
110
Frontier Agents (Kiro autonomous agent / AWS Security Agent / AWS DevOps Agent) の紹介
msysh
3
140
日本の85%が使う公共SaaSは、どう育ったのか
taketakekaho
1
130
Featured
See All Featured
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
How to Think Like a Performance Engineer
csswizardry
28
2.4k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.6k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
0
170
The SEO identity crisis: Don't let AI make you average
varn
0
62
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
54
Discover your Explorer Soul
emna__ayadi
2
1.1k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
580
Navigating Team Friction
lara
192
16k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
170
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
230
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 !!!