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
kazupon
November 11, 2025
Programming
500
2
Share
Nitro v3
kazupon
November 11, 2025
More Decks by kazupon
See All by kazupon
Oxlint JS plugins
kazupon
1
1.3k
gunshi
kazupon
1
210
わたしのOSS活動
kazupon
3
600
Vapor Revolution
kazupon
3
4.1k
Vue.js最新動向
kazupon
3
1.6k
Vue 3.4
kazupon
13
4.8k
Vue & Vite Rustify
kazupon
4
2.5k
Vue.jsエコシステム動向2023
kazupon
17
9.1k
Reactivity Transform
kazupon
1
1.4k
Other Decks in Programming
See All in Programming
レガシーPHP転生 〜父がドメインエキスパートだったのでDDD+Claude Codeでチート開発します〜
panda_program
0
1.1k
Making the RBS Parser Faster
soutaro
0
520
第3木曜LT会 #28
tinykitten
PRO
0
110
AI時代のエンジニアリングの原則 / Engineering Principles in the AI Era
haru860
0
610
How We Benchmarked Quarkus: Patterns and anti-patterns
hollycummins
1
150
決定論 vs 確率論:Gemini 3 FlashとTF-IDFを組み合わせた「法規判定エンジン」の構築
shukob
0
110
クラウドネイティブなエンジニアに向ける Raycastの魅力と実際の活用事例
nealle
2
220
実践CRDT
tamadeveloper
0
590
Angular Signal Forms
debug_mode
0
120
t *testing.T は どこからやってくるの?
otakakot
1
710
ハーネスエンジニアリングにどう向き合うか 〜ルールファイルを超えて開発プロセスを設計する〜 / How to approach harness engineering
rkaga
24
14k
属人化しないコード品質の作り方_2026.04.07.pdf
muraaano
0
240
Featured
See All Featured
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
0
280
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
Leo the Paperboy
mayatellez
7
1.7k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Exploring anti-patterns in Rails
aemeredith
3
330
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
680
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
110
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Abbi's Birthday
coloredviolet
2
7.2k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.1k
The SEO identity crisis: Don't let AI make you average
varn
0
450
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! ❤