13 ポイント 投稿者 GN⁺ 2026-03-14 | 5件のコメント | WhatsAppで共有
  • 従来の esbuild + Rollup の二重構成Rust ベースのバンドラ Rolldown に一本化し、最大10〜30倍高速なビルド性能を実現
  • 新しい プラグインレジストリ が公開され、Vite・Rolldown・Rollup プラグインの検索・管理が可能
  • Vite DevtoolsTypeScript パス解決Wasm SSRコンソールフォワーディング など、開発を便利にする機能が追加
  • 今回のリリースは Vite エコシステムにおける最大級の構造的変化 であり、今後の統合ツールチェーン発展の基盤となる

Rolldown ベースの Vite 8

  • Vite 8 は、従来の esbuild(開発用)Rollup(本番用) の二重バンドラ構成を Rolldown 単一バンドラ に統合
    • Rolldown は Rust で書かれた高性能バンドラ で、Rollup と同じプラグイン API をサポート
    • 既存の Vite プラグインの大半が追加修正なしで動作
  • 性能 は Rollup 比で 10〜30 倍高速で、モジュール単位キャッシュ柔軟なチャンク分割Module Federation などの高度な機能をサポート

Rolldown 導入の過程

  • 初期には rolldown-vite パッケージとして技術プレビューを提供し、コミュニティからフィードバックを収集
    • さまざまな実際のコードベースでテストし、互換性の問題を解決
    • 主要プラグインとフレームワークを対象とした 専用 CI テスト体制 を構築
  • 2025年12月に Vite 8 ベータ を公開し、Rolldown を完全統合
    • ベータ期間中に Rolldown は Release Candidate 段階 へ進み、安定化が進んだ

実際の性能改善事例

  • 複数の企業が ビルド時間短縮効果 を報告
    • Linear: 46秒 → 6秒
    • Ramp: 57% 短縮
    • Mercedes-Benz.io: 最大 38% 短縮
    • Beehiiv: 64% 短縮
  • 大規模プロジェクトほど効果が顕著であり、Rolldown の継続的な改善も予告されている

統合ツールチェーンと技術スタック

  • Vite 8 は Vite(ビルドツール)Rolldown(バンドラ)Oxc(コンパイラ) が緊密に連携する エンドツーエンドのツールチェーン へ進化
    • 解析・変換・最適化の全工程で一貫性を確保
    • Oxc の意味解析 を活用した ツリーシェイキング最適化 が可能
    • 新しい JS 仕様を迅速に導入できる構造

追加機能

  • Vite Devtools: 開発サーバー上でプロジェクトの状態を視覚的に分析可能
  • TypeScript パス(alias)の自動解決 および emitDecoratorMetadata の組み込みサポート
  • Wasm SSR: サーバーサイドレンダリング環境で .wasm?init インポートをサポート
  • ブラウザコンソールフォワーディング: ブラウザエラーをターミナルへ転送し、デバッグ効率を向上
  • @vitejs/plugin-react v6: Babel を削除し、Oxc ベースの React Refresh を適用、インストール容量を削減

今後の開発方針

  • Full Bundle Mode(実験的): 開発中もバンドリングを実行し、3倍高速なサーバー起動40% 高速なリロード10倍少ないネットワークリクエスト を実現
  • Raw AST 転送 および Native MagicString 変換 により、Rust と JS 間の性能差を縮小
  • Environment API 安定化 に向けたエコシステムとの協業を進行中

インストール容量の変化

  • Vite 8 は Vite 7 より約 15MB 増加
    • lightningcss(約 10MB): デフォルトの CSS 圧縮機能を提供
    • Rolldown バイナリ(約 5MB): 速度最適化のため容量が増加
  • 今後のリリースでも容量最適化を継続予定

マイグレーションガイド

  • ほとんどのプロジェクトは 設定変更なしでアップグレード可能
    • 既存の esbuild および rollupOptions 設定は自動変換
  • 大規模プロジェクトでは 2段階マイグレーション を推奨
    • Vite 7 で rolldown-vite へ切り替えた後、Vite 8 にアップグレード
  • 詳細な手順は公式の Migration GuideChangelog で確認可能

Rollup と esbuild への謝辞

  • Rollup は Vite のプラグインエコシステムの基盤を提供し、Rolldown はその API を継承
  • esbuild は高速な開発体験を可能にした中核技術であり、Rust・Go ベースのツーリング発展の契機となった
  • 両プロジェクトの貢献は Vite の DNA に深く刻み込まれている

コミュニティと協力

  • Vite 8 の開発は sapphi-red と Vite チームRolldown チーム、そして多数のコミュニティ貢献者の協力によって完成
  • VoidZeroBoltNuxtLabs が主要パートナーとして参加

5件のコメント

 
GN⁺ 2026-03-14
Hacker Newsの意見
  • 業界が「ビルドはもともと時間がかかるものだ」と何の疑いもなく使ってきた非効率なツール群に、どれほど多くの計算資源を浪費してきたのかを改めて考えさせられる
    私たちはその遅いビルドに合わせて予定を組み、休憩時間を冗談のように扱い、キャッシュレイヤーまで構築してきた
    Viteのメンテナーたちに賛辞を送りたい

    • 遅いJSバンドルで無駄になった資源以上に、非効率なランタイムと抽象化によって浪費されているコストのほうがはるかに大きい
      ほとんどの本番ソフトウェアは必要以上に何十倍も遅い
      Electronアプリが数GBのRAMを使いながら、40年前のソフトウェアよりもさらにもたつく現実がその証拠だ
    • 私も同感だ。ESLintやPrettierのようなツールも、Oxcを知ってからは同じような無駄に感じられる
    • 今後は行列積でも、こうした無駄を振り返る日が来る気がする
    • ビルド性能はずっと以前から私の関心事だった
      14年前、ビルド待ちで失われる時間に気づき、とくにJavaエコシステムでこの問題が深刻だと感じた
      昔、Rubyプロジェクトでは統合テストが毎回DBを作り直すために10分ずつかかっていた
      Kotlin/Spring Bootもコンパイルは遅いし、Rustコンパイラも速いとは言えない
      ただしテストは私たちが制御できる。単体テストはミリ秒単位で終わるべきで、統合テストは並列化とデータのランダム化によって大きく改善できる
      私はMacBook ProでRedis、DB、Elasticsearchを含む数百件のSpring統合テストを40秒以内で回している
      こうした設定を一度整えれば、速いフィードバックループが生まれ、開発の楽しさが戻ってくる
  • 私がVite 8に貢献した部分はWasm SSRサポートだった
    .wasm?init インポートがSSR環境でも動作するように拡張した
    過程は遅かったが、チームが細かく助けてくれ、ドキュメントまで追加してくれた点が印象的だった

    • こういう舞台裏の話を聞くとさらに興味深い
      Viteチームが単にツールを作っているだけでなく、コントリビューターの育成と協業にも本気だと感じられる
  • Electron時代にこうした性能向上を見られるのは本当にうれしい
    私が長く保守してきたプロジェクト(React hooks以前から始まったもの)は、以前はWebpackベースのreact-scriptsでビルドに2分かかっていた
    今ではVite 8で1秒で終わる。私たちがどれほど多くのリソースを浪費してきたかを示す事例だ

    • いまやAIモデルの上に機械が使えるインターフェースを無理やり貼り付ける新たな悪夢が始まったようだ
    • 皮肉なことに、ViteのホームページはA55やS23FEでもカクつく
    • 実際、JSはもともとビルド工程を必要としない言語だった
      ブラウザがそのまま実行できるべきで、TypeScriptも型だけ取り除けばすぐ実行できるように設計されていた
      こうしたビルドツールの存在自体が間違った方向に思える
  • 私たちのチームはVite 8導入後、ビルド時間が4分から30秒に減った
    ほぼドロップイン置き換えのレベルで、Viteチームに感謝している

    • 私たちも10秒から1秒に短縮された。鍵はRolldownのおかげだ
      Viteに統合される前から使っていたが、本当に素晴らしい
    • 4分とは、アプリの規模がどれほど大きいのか気になる
      Nextより速いと言われているのに、そのレベルなら相当な規模なのだろう
    • 私たちのプロジェクトの一つは12分から2分に減った。本当に驚くべき変化だ
  • 特定のフレームワークに縛られないオープンソースのバンドリングソリューションを作ったViteチームに感謝したい
    (軽く咳払いしながらTurbopackに言及)

  • 素晴らしいニュースだ。だがNext.jsはこうしたコミュニティの成果を享受できない気がする
    VercelのNIH症候群のせいだ

    • Vercelはいつも未完成のプレビューを何年も運用するやり方だ
      Next 13でTurbopackアルファを始め、Next 16でようやくデフォルトにした
      2022年にはViteとの比較ベンチマークも歪められていた
      キャッシュ問題、遅い性能、RSCのセキュリティ脆弱性、分かりにくいApp Router、Vercel以外でのホスティングの不便さなど
      Next.jsを選ぶのはリスク
      関連リンク: 比較議論, キャッシュの歴史, 性能分析, セキュリティCVE, OpenNext
    • 数年ぶりにReactへ戻ってきたが、Nextの存在理由は理解しづらい
      公式ドキュメントでもNextがデフォルトのように言及されるのは奇妙だ
      Reactを非SPAとして使う理由が分からない
    • Next.jsは複数のエンタープライズSaaSパートナーとの統合のため、公式SDKとして推される構造になっている
      例: Sitecore Cloud, Sanity, Contentful など
    • 参考までに Cloudflare Vinext もある(自分ではまだ使っていない)
  • Vite+Void CloudVoid Frameworkなどによって、
    いよいよVercelとVoidの対決が始まりそうだ
    とくにPRC(Server Functions)のデモが興味深い — DBからUIまでエンドツーエンドの型安全性を示している
    私たちはTelefunc(tRPC代替)でRPC設計を研究しており、Voidチームとの協業に期待している
    関連リンク: PRCデモ動画, Telefunc, Vike

    • 興味深いのは、Vercelが間接的にVoidの投資家だという噂があることだ
      Void CloudはCloudflare Workers上に構築されているようで、現時点では情報が少ない
      それでもVite+をMITオープンソースとして公開するというのは非常に心強い
      BunがAnthropic支援に集中するあまりOSSをおろそかにすれば、競争優位を失うかもしれない
      参考: Void Cloud
  • JSエコシステムが混乱していても、Viteは一貫して優れたDXと本番品質を示している
    統合されたRolldownバンドラによって、さらに高速で柔軟な基盤になるだろう
    1998年からWeb開発をしてきた立場として、本当にファンだ

  • 長期保守を重視して、私はesbuildを直接使っている
    Viteのようなラッパーが内部変更で壊れるたびに修正するのが嫌だからだ

    • 私も同じやり方でesbuild + シンプルなRPCレイヤーを使っていた
      Zodで型検証を処理し、Postgres型だけコード生成していた
      次ならKyselyを使っていたと思う
    • esbuildは何年たっても壊れなかった唯一のJSツール
    • ただ、まだコード分割が弱い
    • トップレベルawaitにも対応しておらず、ライブリロードもHMRよりはるかに遅い
  • tsconfig pathsの組み込みサポートは本当に良いQoL改善
    設定の重複を減らせる

    • 良いニュースではあるが、Node.js import aliasも試してみる価値はある
      プロジェクトによってはそのほうがシンプルかもしれない
 
aer0700 2026-03-14

実際、JS はもともとビルド工程が不要な言語だったはずで、ブラウザがそのまま実行できるべきだし、TypeScript も型だけ除去すればすぐ実行できるように設計されていたはずです。こうしたビルドツールの存在自体が間違った方向に思えます → これをどうすれば正常化できるのでしょうか;

 
carnoxen 2026-03-17

ブラウザでしか動かしていなかったものをサーバーで直接動かすようになったので、避けられない流れだった気がします

 
ahiou 2026-03-15

私は、Webアプリが高度化するにつれて生じた自然な現象だと考えています。

 
savvykang 2026-03-14

たぶん、Flashを捨てたときのように、ブラウザのJSも捨てるべきではないでしょうか? でも、JSが捨てられる気配は見えません。