跪拜 Guibai
← All articles
JavaScript · Vite · Frontend

Vite 8.1 Ships Bundled Dev Mode, Babel 8.0 Goes ES-Module-Only

By 晓得迷路了 ·
Read original on juejin.cn ↗ Google Translate ↗ Alt translation

Bundled dev mode in Vite 8.1 closes the cold-start gap that made unbundled servers painful on large projects. Babel 8.0's ES-module-only shift and ES2023 default mean any team still shipping ES5 transpilation needs to audit their build pipeline now.

Summary

Vite 8.1's experimental bundled dev mode delivers roughly 15x faster startup and 10x faster full-page reloads compared to unbundled servers, alongside new WASM and ES module integration. Rspack 2.1 ships a Rust-rewritten React compiler, TypeScript 7 support, and a TanStack Start adapter. Babel 8.0 arrives eight years after 7.0 with a hard break: ES modules only, and a default compile target of ES2023 instead of ES5. Weekly downloads of the @babel package family have grown 380x since 7.0, even as SWC and Oxc gained ground.

Astro 7 upgrades to Vite 8, adds a Rust compiler, and exposes the full request-handling pipeline. Deno 2.9 can now package JavaScript projects into standalone desktop apps for macOS, Windows, and Linux, using either the system web view or an embedded Chromium kernel, with cross-compilation and framework support for Next.js and SvelteKit.

On the performance front, TanStack Table v9 cut memory usage by 90% by moving methods to a shared prototype instead of creating per-instance copies — a pattern any library can reuse. FullCalendar 7.0 brings Google Calendar-grade UX to React, Vue, Angular 22, and vanilla JS under an MIT license. ForesightJS 4 predicts browsing intent from mouse and keyboard signals to preload resources, and Kage captures fully-rendered DOM via headless browser for offline mirroring of JS-heavy sites.

Takeaways
Vite 8.1's experimental bundled dev mode achieves 15x faster startup and 10x faster full-page reloads than unbundled mode.
Rspack 2.1 includes a Rust-rewritten React compiler, TypeScript 7 support, and a TanStack Start adapter.
Babel 8.0 drops CommonJS entirely and defaults compilation to ES2023 instead of ES5.
@babel package weekly downloads grew 380x since Babel 7.0 launched eight years ago.
Astro 7 upgrades to Vite 8, adds a Rust compiler, and exposes the full request-handling pipeline.
Deno 2.9 packages JS projects into standalone desktop apps for macOS, Windows, and Linux, with optional Chromium embedding.
TanStack Table v9 reduced memory usage by 90% by moving methods to a shared prototype rather than duplicating them per instance.
FullCalendar 7.0 adds Angular 22 support and remains MIT-licensed with commercial extensions.
ForesightJS 4 predicts user intent from mouse and keyboard signals to preload resources before a click happens.
Kage uses a headless browser to capture fully-rendered DOM for offline mirroring, handling JS-heavy sites that browser Save As misses.
Conclusions

Bundled dev mode in Vite signals that the unbundled approach, while elegant, hit a wall on large codebases where cold-start latency became unacceptable.

Babel's 380x download growth despite the rise of Rust-based alternatives suggests that ecosystem inertia and plugin compatibility still outweigh raw speed for most teams.

Moving methods to a shared prototype is a decades-old JavaScript pattern, yet TanStack Table v9's 90% memory reduction shows how easily it gets overlooked in modern library design.

Deno packaging JS projects as desktop apps with system web views sidesteps Electron's biggest complaint — binary size — while keeping the same framework compatibility.

Babel 8.0 defaulting to ES2023 effectively declares ES5 dead for new projects, but the long tail of enterprise apps still targeting IE-era syntax will keep older versions alive for years.

Concepts & terms
Bundled Dev Mode
A development server mode that pre-bundles dependencies and application code before serving, trading some initial bundle time for dramatically faster startup and hot-reload performance compared to serving unbundled ES modules on demand.
Shared Prototype Pattern
A memory optimization where methods are defined once on a constructor's prototype object rather than created as new function instances for every object. All instances share the same method reference, cutting per-instance memory overhead.
Headless Browser
A browser instance that runs without a visible UI, controllable via scripts. Used for tasks like capturing fully-rendered DOM snapshots of JavaScript-heavy pages that a simple HTTP download would miss.
Source: juejin.cn ↗ Google Translate ↗ Backup ↗