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
Honoの導入を検討していたが、Honoの人が来沖するらしいので、急いでHonoを導入した話
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Aipa
March 09, 2024
Technology
240
0
Share
Honoの導入を検討していたが、Honoの人が来沖するらしいので、急いでHonoを導入した話
ここでLTした話
https://cfm-cts.connpass.com/event/310916/
Aipa
March 09, 2024
More Decks by Aipa
See All by Aipa
Amazon Connect で文字起こしする
commander_aipa
0
30
Devinと電話する
commander_aipa
0
31
Gemini CLI x gcloud CLI x Chrome DevTools MCP で、Google Cloudに乗っているアプリケーションのバグFixをいい感じにする
commander_aipa
0
97
ピンチヒッターです。なにか話します
commander_aipa
0
150
おれたちはいつDXできるのか
commander_aipa
1
100
ウンケーニオキタコワイハナシ
commander_aipa
0
160
Nuxt3 Deeeeeeeeeeeeeeeeeeeeeploy
commander_aipa
0
210
Meilisearchでハイブリッドベクトル検索
commander_aipa
0
190
Dの意思は神を殺す
commander_aipa
0
140
Other Decks in Technology
See All in Technology
BFCacheを活用して無限スクロールのUX を改善した話
apple_yagi
0
140
AIエージェント勉強会第3回 エージェンティックAIの時代がやってきた
ymiya55
0
220
JSTQB Expert Levelシラバス「テストマネジメント」日本語版のご紹介
ymty
0
110
Kubernetesの「隠れメモリ消費」によるNode共倒れと、Request適正化という処方箋
g0xu
0
170
GitHub Actions侵害 — 相次ぐ事例を振り返り、次なる脅威に備える
flatt_security
12
7.3k
15年メンテしてきたdotfilesから開発トレンドを振り返る 2011 - 2026
giginet
PRO
2
260
タスク管理も1on1も、もう「管理」じゃない - KiroとBedrock AgentCoreで変わった“判断の仕事”
yusukeshimizu
0
160
マルチモーダル非構造データとの闘い
shibuiwilliam
1
140
Data Enabling Team立ち上げました
sansantech
PRO
0
190
Tour of Agent Protocols: MCP, A2A, AG-UI, A2UI with ADK
meteatamel
0
190
Zephyr(RTOS)でOpenPLCを実装してみた
iotengineer22
0
180
Babylon.js を使って試した色々な内容 / Various things I tried using Babylon.js / Babylon.js 勉強会 vol.5
you
PRO
0
190
Featured
See All Featured
The Illustrated Children's Guide to Kubernetes
chrisshort
51
52k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
150
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
170
Exploring anti-patterns in Rails
aemeredith
3
300
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
370
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Ethics towards AI in product and experience design
skipperchong
2
250
Fireside Chat
paigeccino
42
3.9k
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.4k
Building Adaptive Systems
keathley
44
3k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
280
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
Transcript
)POPͷಋೖΛݕ౼͍͕ͯͨ͠ɺ )POPͷਓ͕དྷԭ͢ΔΒ͍͠ͷͰɺ ٸ͍Ͱ)POPΛಋೖͨ͠ $MPVE fl BSF.FFUVQ0LJOBXB7PMˠଟ7PMʁ BJQBDPNNBOEFS!ٓ
ࣗݾհ w ΞΠύʔୂͱ͍͍·͢ !BJQBDPNNBOEFS w ͏ͪͳʔΜͪΎͰ͢ w $#DMPVEגࣜձࣾͰಇ͍͍ͯ·͢ w
ྲྀۀքͰΠϊϕʔγϣϯىͨͯ͘͜͠ʑؤு͍ͬͯ·͢ w ϑϩϯτΤϯδχΞͰ͕͢ɺ࠷ۙ3VCZΛॻ͘͜ͱ͕ଟ͍Ͱ͢ w ࡞Δͷ͕ଟ͗ͯؒ͢Λืू͍ͯ͠·͚ͨͯ͢͢
એ
None
None
ࠓ͢͜ͱ
None
͍˕
͍˕
࣮✕
ٸ͛ʂʂʂʂʂʂʂʂʂʂʂʂ w ൃදۦಈϓϩμΫτಋೖ։ൃ w େৎɺϦʔμʔͳͷͰϤγʂʢʁʁʁʁʁʁʁʣ w ࠓΈ͍ͯΔϓϩδΣΫτ'JSFCBTFϓϩδΣΫτͰɺόοΫΤϯυʹ $MPVE'VODUJPOTΛଟ༻͍ͯ͠Δ w "1*ɺόονɺτϦΨʔ༻్Ͱेͷ$MPVE'VODUJPOT͕͍Δ
w $MPVE'VODUJPOTʹ)POPΛೖΕΕ͍͍ΜͩͳɻΑʔ͠ʢυΩϡ ϝϯτΛ͘
0I /PUIJOH$MPVE'VODUJPOT https://hono.dev/getting-started/nodejs
ຊʹͰ͖Δʁ https://hono.dev/getting-started/nodejs
ͱ͋Εࢼ͢ https://zenn.dev/aipacommander/scraps/a1b42841d22bf1
$MPVE'VODUJPOTͰͷϦΫΤετύλʔϯ ̎ͭ w GVODUJPOTIUUQTPO3FRVFTU BQQ w &YQSFTTΈ͍ͨʹ͑Δɻͱ͍͏͔&YQSFTTͬͯΔ w GVODUJPOTIUUQTPO$BMM
EBUB DPOUFYU \^ w ΞϓϦέʔγϣϯʢϑϩϯτΤϯυʣ͔Βɺ4%,ܦ༝ͰؔΛ࣮ߦ ͢Δ w 63-Λࢦఆ͢ΔΜ͡Όͳͯ͘ɺ4%,͔ΒؔΛݺͿ͜ͱ͕Ͱ͖Δ
$MPVE'VODUJPOTͰͷϦΫΤετύλʔϯ ̎ͭ w GVODUJPOTIUUQTPO3FRVFTU BQQ w &YQSFTTΈ͍ͨʹ͑Δɻͱ͍͏͔&YQSFTTͬͯΔ w GVODUJPOTIUUQTPO$BMM
EBUB DPOUFYU \^ w ΞϓϦέʔγϣϯʢϑϩϯτΤϯυʣ͔Βɺ4%,ܦ༝ͰؔΛ࣮ߦ ͢Δ w 63-Λࢦఆ͢ΔΜ͡Όͳͯ͘ɺ4%,͔ΒؔΛݺͿ͜ͱ͕Ͱ͖Δ
ͦ͏ͩͶ
࣌ͷؾ࣋ͪ • Ͳ͏͠Α͏
ઌਓ͍ΔͷͰҰԠͰ͖Δ͜ͱΘ͔͍ͬͯΔ https://zenn.dev/singularity/articles/ fi rebase-hono
࣌ͷؾ࣋ͪ̎ • ·͊ͰCloud Runͱ͔Lambdaͱ͔ʹҠߦ͢Δͱ͖ʹϙʔλϏϦςΟ ্͕Γͦ͏ • ·ͨɺෳCloud FunctionsΛ1ͭͷ Cloud Runʹԡ͠ࠐΊΔ͜ͱͰ͖ͦ͏
→ ίεύΑ͘ͳΔʢͣʣ • Γ·͔͢
ͱ͋ΕؤுΔ
ઌਓͷίʔυΛύΫΔࢀߟʹ͍ͤͯͨͩ͘͞ https://zenn.dev/singularity/articles/ fi rebase-hono
HonoΛCloud Functions্Ͱಈ͔͢ʹ͋ͨͬͯͷ ͷٙ • ຊʹಈ͘ʁ • ڥมऔΕΔʁ • GCP Secret
ManagerͷΞΫηεͰ͖Δʁ • HonoͷExceptionΛར༻Ͱ͖Δʁ • HonoͷMiddlewareͷCORSར༻Ͱ͖Δʁ
ͱ͍͏Θ͚Ͱࢼ͢ https://zenn.dev/aipacommander/scraps/a34e7fd8761a37
ݕূ݁Ռ • ຊʹಈ͘ʁɹˠɹಈ͖·͢ • ڥมऔΕΔʁɹˠɹऔΕ·͢ • import { env }
from 'hono/adapter' → const { NAME } = env<{ NAME: string }>(c) • GCP Secret ManagerͷΞΫηεͰ͖ΔʁɹˠɹͰ͖·͢ɻ্ͱಉ͡ • HonoͷExceptionΛར༻Ͱ͖Δʁɹˠɹ͍͚·͢ • HonoͷMiddlewareͷCORSར༻Ͱ͖ΔʁɹˠɹͰ͖·͢ • ͜Ε͚ͩΤϥʔʹϋϚ͍ͬͯΔ͚Ͳ͕࣌ؒղܾͯ͘͠ΕΔͣ
Ͱ͖ͨͷ
Ͱ͖ͨͷ
Ͱ͖ͨͷ
໘ന͔ͬͨͱ͜Ζ
RuntimeΛఆ͢Δ݅
֤αʔϏεɾϥϯλΠϜͷhandler.tsपΓ -BNCEBͷҾͰडऔΓɺ )POP༻ͷೖྗʹΈସ͑Δ )POP͜ΕͰݺΔ )POPͷฦΓΛΒ͍ɺ -BNCEBͷ3FTQPOTFʹΈ ସ͑Δ
types.ts͕͓͠Ζ͍
ࡶײ
ࡶײ • ॻ͖৺ʢʁʣ͕ͱͯΑ͔ͬͨ • JavaScript׳Ε͍ͯΔਓͳΒɺ͍·͙͢ར༻Ͱ͖ΔϨϕϧ • ͍ΖΜͳΫϥυαʔϏεɺϥϯλΠϜΛڞ௨Խ͢ΔΠϯλʔϑΣʔεͷ Έํ͕໘ന͍ • TypeScriptͷษڧʹͳΓͦ͏ʢͳͬͯΔʣ
• ͘ϓϩμΫγϣϯͷϦϦʔε͍ͨ͠ʢ͝ΊΜͶؒʹ߹Θͳ͔ͬͨʣ • དྷिग़͢ʂ
͓ΘΓ