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
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Honoの導入を検討していたが、Honoの人が来沖するらしいので、急いでHonoを導入した話
ここでLTした話
https://cfm-cts.connpass.com/event/310916/
Aipa
March 09, 2024
More Decks by Aipa
See All by Aipa
「絶対に無理」を「ちょっと無理」にするAI活用術
commander_aipa
0
66
Amazon Connect で文字起こしする
commander_aipa
0
38
Devinと電話する
commander_aipa
0
41
Gemini CLI x gcloud CLI x Chrome DevTools MCP で、Google Cloudに乗っているアプリケーションのバグFixをいい感じにする
commander_aipa
0
110
ピンチヒッターです。なにか話します
commander_aipa
0
160
おれたちはいつDXできるのか
commander_aipa
1
110
ウンケーニオキタコワイハナシ
commander_aipa
0
170
Nuxt3 Deeeeeeeeeeeeeeeeeeeeeploy
commander_aipa
0
220
Meilisearchでハイブリッドベクトル検索
commander_aipa
0
210
Other Decks in Technology
See All in Technology
protovalidate-es を導入してみた
bengo4com
0
140
Building applications in the Gemini API family.
line_developers_tw
PRO
0
2.1k
AI フレンドリーなエラー監視を TypeScript で実現する
shinyaigeek
2
270
ABEMA の Datadog × OTel 基盤、 中から見るか? 外から見るか?
tetsuya28
0
110
はじめてのDatadog
kairim0
0
290
React、まだ楽しくて草
uhyo
7
4.2k
AIプラットフォームを運用し続けるための可観測性
tanimuyk
4
1.1k
PHP と TypeScript の型システム比較:AI 時代の「型」は誰のためにあるのか? #frontend_phpcon_do / frontend_phpcon_do_2026
shogogg
1
260
Diagnosing performance problems without the guesswork
elenatanasoiu
0
170
Dario Amodi『Policy on the AI Exponential』を理解する
nagatsu
0
200
マーケットプレイス版Oracle WebCenter Content For OCI
oracle4engineer
PRO
5
1.8k
社内 AI エージェント Synapse と セマンティックレイヤーの育て方
hiroakis
0
210
Featured
See All Featured
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
201
75k
Building an army of robots
kneath
306
46k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.5k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
310
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
840
Are puppies a ranking factor?
jonoalderson
1
3.5k
Skip the Path - Find Your Career Trail
mkilby
1
140
Discover your Explorer Soul
emna__ayadi
2
1.1k
What does AI have to do with Human Rights?
axbom
PRO
1
2.2k
Between Models and Reality
mayunak
4
330
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
190
A designer walks into a library…
pauljervisheath
211
24k
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ͷษڧʹͳΓͦ͏ʢͳͬͯΔʣ
• ͘ϓϩμΫγϣϯͷϦϦʔε͍ͨ͠ʢ͝ΊΜͶؒʹ߹Θͳ͔ͬͨʣ • དྷिग़͢ʂ
͓ΘΓ