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
Nitro v3
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
kazupon
November 11, 2025
Programming
570
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Nitro v3
kazupon
November 11, 2025
More Decks by kazupon
See All by kazupon
プラグインで拡張される Context をtype-safe にする難しさと設計判断
kazupon
2
1.2k
Oxlint JS plugins
kazupon
1
1.4k
gunshi
kazupon
1
240
わたしのOSS活動
kazupon
3
630
Vapor Revolution
kazupon
3
4.3k
Vue.js最新動向
kazupon
3
1.6k
Vue 3.4
kazupon
13
4.9k
Vue & Vite Rustify
kazupon
4
2.5k
Vue.jsエコシステム動向2023
kazupon
17
9.4k
Other Decks in Programming
See All in Programming
使いながら育てる Claude Code — 開発フローの1コマンド化 × 繰り返し指摘の自動仕組み化
shiki_kakaku
0
1.7k
AI時代のPHPer生存戦略 ~「言語、もうなんでもよくない?」に本気で向き合う~
vivion
0
320
運用ダッシュボードの設計を誰も教えてくれないのだけどみなさんどうしてるんですか? - チームに監視するという文化を根付かせるための第一歩を踏みたい -
satoshi256kbyte
1
110
Go 1.27 における memory allocation の高速化
andpad
0
160
yield再入門 #phpcon
o0h
PRO
0
1k
Google Apps Script で Ruby を動かす
kawahara
0
150
Jindong: Introducing Declarative Haptics in Compose Multiplatform
l2hyunwoo
0
110
テーブルをDELETEした
yuzneri
0
140
複数の Claude Code が"放置"されてしまう問題をCLI ダッシュボードを自作して解決した話
sumihiro3
1
680
「寝てても仕事が進む」Claude Codeで組む第二の脳
tomoyafujita2016
0
330
仕様駆動開発へのトライを機に チームに適合する手法を模索し続けている話
freee
PRO
0
480
自動化したのに回らないテスト運用の壁ーAI時代の品質責任と生産性
mfunaki
0
130
Featured
See All Featured
Optimising Largest Contentful Paint
csswizardry
37
3.9k
A Tale of Four Properties
chriscoyier
163
24k
Are puppies a ranking factor?
jonoalderson
1
3.8k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
Amusing Abliteration
ianozsvald
1
240
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.5k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
560
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.9k
Writing Fast Ruby
sferik
630
63k
Thoughts on Productivity
jonyablonski
76
5.3k
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
4 Signs Your Business is Dying
shpigford
187
22k
Transcript
Nitro v3 Vue Fes Japan 2025 After Talk 2025/11/11 @kazupon
ࣗݾհ
Vue Fes Japan Organizer Vue.js Japan User Group Organizer Vue.js
Core Team Nuxt Ecosystem Team Vue I18n, Intlify and Gunshi author Plaid, inc. @kazu_pon kazupon kazupon
͡Ίʹ
Vue Fes Japan 2025 • Έͳ͞Μָ͠Ί·͔ͨ͠ʁ
Vue Fes Japan 2026 • དྷʹ͚ͯ४උ͕࢝·͍ͬͯΔͷͰɺίΞελο ϑ͓͓ͪͯ͠Γ·͢ʔ
Vue Fes Japan 2025 ։࠵લʹ…
ViteConf 2025 • Evan ࢯͷΩʔϊʔτͷଞɺ֤ίϛϡχςΟʹΑΔηογϣϯ͕ࢁ͋ͬͨ https://www.youtube.com/watch?v=x7Jsmt_o9ek
PooyaࢯʹΑΔNitroͷηογϣϯ https://www.youtube.com/watch?v=189wogO3aCE
ࠓ͢͜ͱ Nitro v3 ͷհ
ຊʹೖΔલʹ
Nitro ʹ͍ͭͯ ؆୯ʹ ͓͞Β͍
Nitroͱ • WebαʔόʔΛ࡞ΔͨΊͷπʔϧΩοτ • UnJSΛϕʔεʹ࡞ΒΕ͍ͯΔͨΊͲͷ JS Runtime Ͱಈ͖ɺͲΜͳॴ Ͱಈ͘ •
҆ఆ൛ϝδϟʔόʔδϣϯ v2 • ύοέʔδ໊: Nitropack
Nitroͷಛ
• Web ϑϩϯτΤϯυͷϝλϑϨʔϜϫʔΫ Nitroͷࣄྫ Nitro Nuxt Solid Start Analog TanStack
Start ※: Ұ෦ػೳΛ͍ͬͯΔ ※
Nitro v3
• Nitro v3 ݱ࣌Ͱ·ͩ alpah όʔδϣϯ • ਖ਼ࣜϦϦʔε·Ͱʹ༷͕มΘΔՄೳੑ͕͋Γ·͢ ҙ
Nitro v3 Ͳ͏ͳΔͷ͔ • NPMొύοέʔδ໊ nitropack ͔Β nitro ʹมߋ •
Request/Response σϑΥϧτ Web Standard ʹ • αʔόʔΤϯτϦͷఏڙ • ͞ΒʹϋΠύϑΥʔϚϯεԽ • Ϩϯμϥͷఏڙ • Vite ϓϥάΠϯͷఏڙ
Request /Resonse σϑΥϧτWeb Standard ʹ • Nitro v2 : H3
v1 (Node APIϕʔε) • Nitro v3 : H3 v2 (Web Standard API ϕʔε) https://h3.dev/migration#web-standards
αʔόΤϯτϦͷఏڙ • άϩʔόϧϛυϧΣΞͱͯ͠ػೳ͢ΔಛผͳϋϯυϥΛఏڙ͢Δ • ͪΖΜɺWeb Standards ʹ४ڌʂ
αʔόΤϯτϦͷఏڙ • H3 ͚ͩͰͳ͘ Hono Elysia ͱ͍ͬͨଞͷWebϑϨʔϜϫʔΫ͕ಈ͍ ͪΌ͏
͞ΒʹϋΠύϑΥʔϚϯεԽ • Dependencies (ґଘ node_modules) ͕ݮͬͨ
[email protected]
@cloud2are/
[email protected]
@rollup/
[email protected]
@rollup/
[email protected]
@rollup/
[email protected]
@rollup/
[email protected]
@rollup/
[email protected]
@rollup/
[email protected]
@rollup/
[email protected]
@vercel/
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
@rollup/
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
@types/
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
@mapbox/
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
@sindresorhus/
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
@ioredis/
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
@parcel/
[email protected]
@parcel/
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
@babel/
[email protected]
@babel/
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
@types/
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
@poppinss/
[email protected]
[email protected]
@poppinss/
[email protected]
@poppinss/
[email protected]
@speed-highlight/
[email protected]
@babel/
[email protected]
@babel/
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
@sindresorhus/
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
@nodelib/
[email protected]
@nodelib/
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
@jridgewell/
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
@jridgewell/
[email protected]
[email protected]
[email protected]
[email protected]
@jridgewell/
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
@jridgewell/
[email protected]
@jridgewell/
[email protected]
@nodelib/
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
@isaacs/
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
@isaacs/
[email protected]
[email protected]
[email protected]
[email protected]
@jridgewell/
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
Unpacked Size: 76MB Dependencies : 312 Unpacked Size: 15MB Dependencies : 16
• Ϗϧυग़ྗαΠζվળ ͞ΒʹϋΠύϑΥʔϚϯεԽ Nitropack v2 Nitro v3 ݮ% ඪ४Ϗϧυ 135
KB 35.7 KB -74% 34.5 KB (gzip) 10.8 KB (gzip) -69% ඪ४Ϗϧυ (minify) 74.1 KB 21.4 KB -71% 24.5 KB (gzip) 8.11 KB (gzip) -67% https://www.youtube.com/watch?v=189wogO3aCE&t=438s
• ϧʔςΟϯάΛίϯύΠϧ͢Δ͜ͱͰϧʔτϚονϯάΛߴԽ ͞ΒʹϋΠύϑΥʔϚϯεԽ ϧʔςΟϯάύεใ͔Β Rou3 ͷίϯύΠϥͰ ϧʔτϚονϯάϩδοΫ ίʔυΛੜ
Ϩϯμϥͷఏڙ • HTMLΛϨϯμϦϯά͢ΔͨΊʹಛผͳϋϯυϥΛఏڙ͢Δ • ಛఆͷAPI Routes Route ϋϯυϥʹҰக͠ͳ͍ͯ͢ͷ Route
ʹରͯ͠ HTML ςϯϓϨʔτ͕ϨϯμϦϯά͞ΕΔ $REQUESTͷΑ͏ͳάϧʔόϧม Rendu (·ͩexperimental)ͱ͍͏ PHPϥΠΫͳߏจͰ ςϯϓϨʔτΛϨϯμϦϯάͰ͖Δ
• Nitro ͷػೳΛ Vite ϓϥάΠϯʹΑͬͯɺVite ΞϓϦέʔγϣϯΛαʔ όʔαΠυରԠͨ͠ϑϧελοΫԽͯ͠ΞϓϦέʔγϣϯͱͯ͠ఏڙՄ ೳʹ Vite ϓϥάΠϯͷఏڙ
Demo Nitro Vite ϓϥάΠϯ + Elysia + Vue Λͬͨ SSRͰ͖ΔΧϯλʔ
ViteΞϓϦέʔγϣϯ
• NitroͷͲ͜ʹͰσϓϩΠͰ͖ΔಛੑΛ׆͔ͯ͠ɺVite ΞϓϦέʔγϣϯ Λ༷ʑͳϗεςΟϯάϓϥοτϑΥʔϜʹσϓϩΠͰ͖Δʂ • Vite Λϕʔεʹඞཁ࠷খݶͷSSRΛ݉Ͷඋ͑ͨͷΛߏஙՄೳʹ • Vite+ αϙʔτ͢ΔͬΆ͍ʁͷͰγʔϜϨεʹҠߦͰ͖ͦ͏
Vite ϓϥάΠϯ Nitro ͷՄೳੑ https://viteplus.dev/
Thank You! ❤