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
Claude Code で Astro blog を Pages から Workers へ移行...
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Kei Kamikawa
July 18, 2025
Programming
0
280
Claude Code で Astro blog を Pages から Workers へ移行してみた
https://workers-tech.connpass.com/event/359726/
でしゃべりました
Kei Kamikawa
July 18, 2025
Tweet
Share
More Decks by Kei Kamikawa
See All by Kei Kamikawa
オレを救った Cline を紹介する
codehex
17
18k
どこでも使える Cloudflare Workers!
codehex
6
1k
htmx is fun!
codehex
3
430
すぐ使える Cloudflare Workers!
codehex
15
3.7k
Go to Cloudflare Workers
codehex
8
2.4k
AI Gateway 使っているよ!
codehex
2
2k
日時処理の新スタンダード: Synchro によるタイムゾーン安全、楽々開発
codehex
1
2.6k
Cloudflare Workers は楽しい!
codehex
9
3.4k
gRPC Client on Cloudflare Workers
codehex
2
6.9k
Other Decks in Programming
See All in Programming
Linux Kernelの1文字のミスで 権限昇格ができた話
rqda
0
2k
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
730
SourceGeneratorのマーカー属性問題について
htkym
0
210
ロボットのための工場に灯りは要らない
watany
11
3k
Angular-Apps smarter machen mit Gen AI: Lokal und offlinefähig - Hands-on Workshop!
christianliebel
PRO
0
130
AI駆動開発の本音 〜Claude Code並列開発で見えたエンジニアの新しい役割〜
hisuzuya
4
530
The free-lunch guide to idea circularity
hollycummins
0
290
How to stabilize UI tests using XCTest
akkeylab
0
130
モダンOBSプラグイン開発
umireon
0
160
「効かない!」依存性注入(DI)を活用したAPI Platformのエラーハンドリング奮闘記 / "It’s Not Working!" A Struggle with Error Handling in API Platform using DI
mkmk884
0
110
存在論的プログラミング: 時間と存在を記述する
koriym
3
210
new(1.26) ← これすき / kamakura.go #8
utgwkk
0
2.5k
Featured
See All Featured
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
200
Site-Speed That Sticks
csswizardry
13
1.1k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
1
160
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
220
The Limits of Empathy - UXLibs8
cassininazir
1
270
Optimising Largest Contentful Paint
csswizardry
37
3.6k
[SF Ruby Conf 2025] Rails X
palkan
2
840
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Agile that works and the tools we love
rasmusluckow
331
21k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
250
Marketing to machines
jonoalderson
1
5k
We Have a Design System, Now What?
morganepeng
55
8k
Transcript
$MBVEF$PEFͰ "TUSPCMPHΛ1BHFT͔Β 8PSLFSTҠߦͯ͠Έͨ 8PSLFST5FDI5BMLTJO,ZPUP
8)0".* +645461&326*$,
!DPEFIFY !$PEF)FY w ԭೄ͔Βདྷ·ͨ͠ w 0LJOBXBQNΛӡӦ͍ͯ͠·ͨ͠ w /05")05&-ͰεϚʔτϗʔϜΛ ։ൃ͍ͯ͠·͢
None
ੈքதʹ͋ͳͨͷՈΛ NOT A HOTELɺΞʔτ×αΠΤϯεͰਓʑͷΒ͠Λେ͖͘ม͍͑ͯ͘ελʔτΞοϓͰ͢ɻ ಛผͳϩέʔγϣϯʹɺಛผͳΫϦΤΠλʔ͕σβΠϯͨ͠ՈΛɺ ͜Ε·ͰΑΓ؆୯͔ͭศརʹॴ༗͢ΔࣄΛՄೳʹ͠·͢ɻ NOT A HOTEL͕ࢦ͢ͷɺੈքதʹՈΛڞಉॴ༗͠ɺͯ͢ͷਓʑʹ๛͔ͳਓੜΛఏڙ͢Δ͜ͱɻ ݁Ռͱͯ͠ੈքΛͬͱָ͘͠ɺΑΓྑ͍ͯ͘͘͜͠ͱΛVISIONʹܝ͍͛ͯ·͢ɻ
Concept
ѹతͳݐஙσβΠϯͱϏδωεϞσϧʹΑͬͯ ͭ͘ΒΕΔϓϩμΫτ 99.20% 91.0% 801໊ 421ԯԁ ྦྷܭ૯ܖߴ Φʔφʔ ॓ധຬ ։ۀલച
ۀʙ20252݄Ἤͷ࣮ αʔϏε֓ཁ
None
IUUQTQFBUJYDPNFWFOU
8IZ1BHFT8PSLFST $MPVE fl BSF8PSLFST'JSTU
ͦͦ$MPVE fl BSF1BHFTҰͩͬͨ
ͳͥ1BHFTͩͬͨʁ w ੩తಈతαΠτͷϗεςΟϯά w 1SFWJFX1SPEVDUJPO63-ͷੜ w (JU)VCΠϯςάϨʔγϣϯ $*$% w
ϑϧελοΫΞϓϦέʔγϣϯͷ։ൃɾӡ༻
ҰํͰʜ w ϑϨʔϜϫʔΫͷ։ൃڥͷະఏڙ w 8PSLFSTͰ͑Δ͕1BHFTͰͰ͖ͳ͍͜ͱ w $SPO5SJHHFS σϓϩΠڥͷ૿ݮ w %VSBCMF0CKFDUT2VFVFͷ੍
w /PEFKTޓͷ੍
None
શ͕ͯ8PSLFST w 4UBUJD"TTFUTͷαϙʔτ w ओཁϑϨʔϜϫʔΫΛຊ൪ରԠͰαϙʔτ w 3FNJY 3FBDU3PVUFSW ɺ"TUSPɺ)POPɺ7VFɺ /VYUɺ4WFMUF,JU͕("
w ։ൃڥΛָʹ͢Δ7JUF1MVHJOͷఏڙ w ඇຊ൪ϒϥϯν༻ϓϨϏϡʔ63-Λࣗಈੜ w $*$%
IUUQTCMPHDMPVE fl BSFDPNGVMMTUBDLEFWFMPQNFOUPODMPVE fl BSFXPSLFST l$MPVE fl BSF1BHFTҾ͖ଓ͖αϙʔτ͠·͢ ͕ɺࠓޙͷࢿɺ࠷దԽɺػೳ։ൃͷ࡞ۀ͢ ͯ8PSLFSTͷվળʹ͚ΒΕ·͢ɻz
ϒϩάհ ࣮ࡍʹҠߦ͢ΔϓϩδΣΫτ
IUUQTCMPHDPEFIFYEFW
w IUUQTHJUIVCDPNTBUOBJOHBTUSPQBQFSΛϕʔε ͱͨ͠ɺͪΐͬͱվ44(ϒϩά w "TUSP W w 5BJMXJOE$44 w
;FOO.BSLEPXO w $MPVE fl BSF1BHFTͰϗεςΟϯά ࠾༻ͯ͠Δٕज़
w IUUQTHJUIVCDPNTBUOBJOHBTUSPQBQFSΛϕʔεͱ ͨ͠ɺͪΐͬͱվ44(ϒϩά w "TUSP W ɹɹɹɹɹɹɹɹɹɹɹɹVQEBUF ͓·͚ w
5BJMXJOE$44 w ;FOO.BSLEPXO w $MPVE fl BSF8PSLFSTͰϗεςΟϯάVQEBUF ࠾༻ͯ͠Δٕज़
$MBVEF$PEFґཔઓུ ίʔσΟϯάΤʔδΣϯτґཔ͍ͯ͘͠લʹ
w $POUFYU w ࠷৽ͷόʔδϣϯʹରԠͨ͠υΩϡϝϯτίʔυྫΛιʔε͔ Βऔಘ͠ɺͦΕΒΛ͋ͳͨͷϓϩϯϓτʹදࣔ͢Δ w $MPVE fl BSF%PDVNFOUBUJPO.$14FSWFS w
ެࣜυΩϡϝϯτ͔ϕΫτϧ%#ʹอଘ͞ΕͯΔ .$14FSWFS
͋·ΓΒΕͯͳ͍5JQT
w 7FSUFY"*Λ༻ w "/5)301*
[email protected]
%&-bDMBVEFTPOOFU! w "/5)301*$@4."--@'"
[email protected]
%&-DMBVEF IBJLV! .PEFM
$MBVEF$PEFୗ͢ λεΫΛґཔ͍ͯ͘͠ࣄྫ
DMBVEFJOJU w JOJUDMBVEFͷίϚϯυ w JOJUͰશମѲઌʹ͢Δ
w "TUSPͰߏங͞ΕͨϒϩάΛ$MPVE fl BSF1BHFT͔Β$MPVE fl BSF 8PSLFSTҠߦ͢ΔͨΊͷɺৄࡉͳܭըΛཱͯͯ΄͍͠ w ͜ͷஈ֊Ͱίʔυ࣮ͤͣɺܭըࡦఆʹूதͯ͠΄͍͠ w
1MBONPEF VMUSBUIJOLͰਐΊΔͱྑ͍ w ࢀরใͱͯ͠ɺ$MPVE fl BSFͷҠߦΨΠυ NJHSBUF@QBHFT@UP@XPSLFST@HVJEF 8FCݕࡧͷ׆༻Λࢦࣔ 1BHFTͷҠߦґཔ
1BHFTͷҠߦґཔ QMBONPEFͩͱॻ͖ࠐΈΛ͠ͳ͍
w OQNJOTUBMMΛ࣮ߦ͠ɺߋ৽͞Εͨ QBDLBHFKTPOʹج͍ͮͯύοέʔδΛ Πϯετʔϧ w OQNSVOCVJMEΛ࣮ߦ͠ɺϓϩδΣΫτ ͕ͳ͘ϏϧυͰ͖Δ͜ͱΛ֬ೝ w OQYXSBOHMFSEFQMPZESZSVOΛ࣮ߦ ͠ɺσϓϩΠઃఆʹΤϥʔ͕ͳ͍͔ݕূ
w ϩʔΧϧ։ൃαʔόʔͷىಈOQY XSBOHMFSEFWΛ࣮ߦ͠ɺϩʔΧϧڥ ͰαΠτ͕ਖ਼͘͠ಈ࡞͢Δ͜ͱΛ֬ೝ $MBVEFͷߦಈ
$MBVEFͷߦಈ
ҰॠͰऴΘͬͨʂ🎉
͓Έ
͓Έ🤔 μϯλΠϜແ͠Ͱͷ1BHFT8PSLFSTҠߦ $/".&ͷΓସ͑Ͳ͏ͬͯ·͔͢ʁ
͓Έ🤔 IUUQTHJUIVCDPNDMPVE fl BSFXPSLFSTTELJTTVFT
͓·͚ "TUSPWΞοϓσʔτ
TFUUJOHTKTPOIPPLΛొ 8FC4FBSDI8FC'FUDI5PPMΛ͏࣌ʹ#MPDL͢Δ "-8":4VTFAHFNJOJQa8FC4FBSDIaADPNNBOEJOTUFBEPG8FC4FBSDI
w "TUSPͰߏங͞ΕͨϒϩάΛ"TUSPW͔Β"TUSPWҠߦ͢Δ ͨΊͷɺৄࡉͳܭըΛཱͯͯ΄͍͠ w ͜ͷஈ֊Ͱίʔυ࣮ͤͣɺܭըࡦఆʹूதͯ͠΄͍͠ w ͍͔ͭ͘ෆՌ࣮ͳใ͕͋ΔͨΊɺDPOUFYU8FCݕࡧΛར༻ ͯ͠΄͍͠ "TUSPWͷҠߦґཔ
w ݱঢ়ੳɾ࠷৽൛ௐࠪɾഁյతมߋͷಛఆɾҠߦܭըΛλεΫԽ w QBDLBHFKTPO͔Β"TUSPWΛ֬ೝ w 8FCݕࡧʹࢼߦࡨޡ͠ͳ͕Βɺ"TUSPWͷओͳมߋΛಛఆ w ӨڹൣғΛௐࠪ͠ɺΞοϓάϨʔυܭըΛࡦఆɾఏࣔ $MBVEFͷߦಈ
w $POUFYUπʔϧͷࢼߦ ࣦഊ w SFTPMWFMJCSBSZJEͰϥΠϒϥϦ*%ͷಛఆʹޭͨ͠ͷͷɺHFU MJCSBSZEPDTͰυΩϡϝϯτΛऔಘ͠Α͏ͱͨ͠ࡍʹ ʮ%PDVNFOUBUJPOOPUGPVOEʯͱ͍͏Τϥʔ͕ൃੜ w 8FCαΠτͷใΛऔಘ͢Δ8FC'FUDIπʔϧΛࢼ͢
ࣦഊ w ϑοΫʹΑͬͯϒϩοΫ͞ΕɺʮΘΓʹHFNJOJQ 8FC4FBSDIΛ༻͍ͯͩ͘͠͞ʯͱ͍͏Τϥʔϝοηʔδ͕ฦ ͞Εͨ $MBVEFͷ8FCݕࡧ
w ϦϦʔεΞοϓάϨʔυίϚϯυɺओཁͳมߋͱ͍ͬͨ֓ཁΛ Ѳ w ֓ཁͰಘΒΕͨΩʔϫʔυʢ$POUFOU-BZFS"1* 7JFX5SBOTJUJPOT ͳͲʣΛݩʹɺΑΓ۩ମతͳҠߦΨΠυΛݕࡧ w ઃఆϑΝΠϧͷมߋ"1*ͷ۩ମతͳ͍ํͱ͍ͬͨɺٕज़తͳৄࡉ ʹযΛͯͯใΛऩू
$MBVEFͷHFNJOJ8FCݕࡧ
$MBVEFͷߦಈ
$MBVEFͷߦಈ
'JO