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
Aipa
March 09, 2024
Technology
0
100
Honoの導入を検討していたが、Honoの人が来沖するらしいので、急いでHonoを導入した話
ここでLTした話
https://cfm-cts.connpass.com/event/310916/
Aipa
March 09, 2024
Tweet
Share
More Decks by Aipa
See All by Aipa
Nuxt3 Deeeeeeeeeeeeeeeeeeeeeploy
commander_aipa
0
24
Meilisearchでハイブリッドベクトル検索
commander_aipa
0
10
Dの意思は神を殺す
commander_aipa
0
39
ファインチューニングがしたい
commander_aipa
0
71
サクッと検索サーバを用意する
commander_aipa
0
94
リアクティブを知る1歩
commander_aipa
0
170
さっき作った
commander_aipa
0
180
WordPressと琉球の罪
commander_aipa
1
980
「アッー」で起こるパニックを解消する
commander_aipa
0
180
Other Decks in Technology
See All in Technology
RubyKaigi 2024 - Make Your Own Regex Engine!
makenowjust
1
160
データ分析力を高めるSQL研修サービス『SQL Everyone』
hikarut
1
390
cgroup v2 で何が変わったのか / TechFeed Experts Night #28
tenforward
2
160
サイボウズ 開発本部採用ピッチ / Cybozu Engineer Recruit
cybozuinsideout
PRO
9
37k
サービス開発におけるVue3とTypeScriptの親和性について
tsukuha
10
1.8k
OPENLOGI Company Profile
hr01
0
46k
拓展QA日常工作的邊界
line_developers_tw
PRO
0
560
大規模言語モデル (LLM)における低精度数値表現
pfn
PRO
3
830
汎用ポリシー言語Rego + OPAと認可・検証事例の紹介 / Introduction Rego & OPA for authorization and validation
mizutani
1
160
日本が誇るイタリアのダンスミュージック!? ユーロビートって何??
minorun365
PRO
2
230
シンプルなHITL機械学習と様々なタスクにおけるHITL機械学習
naohachi89
0
320
動画配信サービスのフロントエンド実装に学ぶ設計原則
yud0uhu
1
130
Featured
See All Featured
Done Done
chrislema
178
15k
Writing Fast Ruby
sferik
622
60k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
12
1.1k
Reflections from 52 weeks, 52 projects
jeffersonlam
345
19k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
188
16k
Stop Working from a Prison Cell
hatefulcrawdad
266
19k
The Invisible Customer
myddelton
114
12k
Optimising Largest Contentful Paint
csswizardry
13
2.4k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
23
1.7k
Producing Creativity
orderedlist
PRO
338
39k
Building Your Own Lightsaber
phodgson
100
5.7k
How STYLIGHT went responsive
nonsquared
92
4.8k
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ͷษڧʹͳΓͦ͏ʢͳͬͯΔʣ
• ͘ϓϩμΫγϣϯͷϦϦʔε͍ͨ͠ʢ͝ΊΜͶؒʹ߹Θͳ͔ͬͨʣ • དྷिग़͢ʂ
͓ΘΓ