ricomintea’s diary

好きなものを好きでいる

Next.js13のTurbopack

2022年10月の Next.js Conf で発表された内容のひとつに Turbopack というものがありました。

webpack と Vercel のメンバーによって作られているもので、2023年3月の時点ではアルファ版として試せる状態です。

turbo.build

ここ数年、フロントエンド周りのツールは 実行速度の面でパフォーマンスの高い Go や Rust などで実装されていることが多いです。Turbopack もまた Rust で実装されていて、webpack と比べて言語レベルで処理速度が上がります。

同じように JavaScript 以外の言語で実装された Vite との違いについても話がありました。

turbo.build

Vite は開発時のサーバー起動の時間を主眼に置き、開発しているソースコードはバンドルせず ES Modules を利用してブラウザ側で解決させます。(npm パッケージのライブラリは esbuild によって事前にバンドルが行われます。)

ja.vitejs.dev

Turbopack では開発規模が大きくなって必要なモジュールが増えたときに、ネットワークリクエストのパフォーマンスが落ちることを懸念して、バンドルの処理をいい感じにやることで解決しようとしています。

ロードマップでは、Next.js 以外にも Svelte などほかのフレームワークの対応も前向きなようで、フロントエンド開発全体の底上げに繋がりそうです。