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
2
300
Nitro v3
kazupon
November 11, 2025
Tweet
Share
More Decks by kazupon
See All by kazupon
わたしのOSS活動
kazupon
3
540
Vapor Revolution
kazupon
3
3.8k
Vue.js最新動向
kazupon
3
1.6k
Vue 3.4
kazupon
13
4.7k
Vue & Vite Rustify
kazupon
4
2.4k
Vue.jsエコシステム動向2023
kazupon
17
8k
Reactivity Transform
kazupon
1
1.4k
わたしのOSS活動
kazupon
1
1.1k
Vue with Vite
kazupon
2
2.6k
Other Decks in Programming
See All in Programming
Vueで学ぶデータ構造入門 リンクリストとキューでリアクティビティを捉える / Vue Data Structures: Linked Lists and Queues for Reactivity
konkarin
1
200
問題の見方を変える「システム思考」超入門
panda_program
0
200
アーキテクチャと考える迷子にならない開発者テスト
irof
7
2.8k
Web エンジニアが JavaScript で AI Agent を作る / JSConf JP 2025 sponsor session
izumin5210
4
1.5k
Designing Repeatable Edits: The Architecture of . in Vim
satorunooshie
0
360
Chart.jsで長い項目を表示するときのハマりどころ
yumechi
0
110
しっかり学ぶ java.lang.*
nagise
1
350
Atomics APIを知る / Understanding Atomics API
ssssota
1
140
Kotlin + Power-Assert 言語組み込みならではのAssertion Library採用と運用ベストプラクティス by Kazuki Matsuda/Gen-AX
kazukima
0
110
オフライン対応!Flutterアプリに全文検索エンジンを実装する @FlutterKaigi2025
itsmedreamwalker
2
200
AIを駆使して新しい技術を効率的に理解する方法
nogu66
1
620
Agentに至る道 〜なぜLLMは自動でコードを書けるようになったのか〜
mackee
4
1.3k
Featured
See All Featured
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
How STYLIGHT went responsive
nonsquared
100
5.9k
How GitHub (no longer) Works
holman
315
140k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
140
34k
For a Future-Friendly Web
brad_frost
180
10k
GitHub's CSS Performance
jonrohan
1032
470k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
9
970
Optimizing for Happiness
mojombo
379
70k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
11
930
[RailsConf 2023] Rails as a piece of cake
palkan
57
6.1k
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! ❤