Back to blog

Rolldown and Vite 8: The Rust Bundler That Will Replace Rollup and ESBuild

Hello HaWkers, the JavaScript build tools ecosystem is about to undergo a revolution. Rolldown, a new bundler written in Rust, is coming to replace both Rollup and ESBuild within Vite. With Vite 8 in beta, this change is closer than ever.

Have you ever wondered why Vite uses two different tools for development and production? Rolldown solves exactly this problem, unifying everything into a single ultrafast tool.

The Current Vite Problem

Currently, Vite uses two different tools:

Development (ESBuild)

  • Ultrafast transpilation
  • Written in Go
  • Does not generate optimized bundles

Production (Rollup)

  • Optimized bundles
  • Excellent tree-shaking
  • Written in JavaScript (slow)

Consequences

1. Different Behaviors

What works in dev may break in prod, and vice versa.

2. Build Performance

Rollup, being written in JavaScript, is significantly slower than native alternatives.

3. Double Maintenance

The Vite team needs to maintain compatibility with two different tools.

What is Rolldown

Rolldown is a JavaScript bundler written in Rust, created specifically to solve the above problems. It combines:

  • ESBuild Speed: Native Rust performance
  • Rollup Features: Tree-shaking, code splitting, plugins
  • Compatibility: API compatible with Rollup

Initial Benchmarks

Operation Rollup ESBuild Rolldown
Parse 100ms 15ms 12ms
Transform 200ms 25ms 20ms
Bundle 500ms 80ms 60ms
Total 800ms 120ms 92ms

Benchmark on medium project (500 files)

Main Features

1. Rollup-Compatible API

  • Rollup plugins work with minimal changes
  • Familiar configuration for Vite users
  • Smooth migration

2. Native Performance

  • Written in Rust
  • Real parallelism
  • Low memory consumption

3. Unified Features

  • Same behavior in dev and prod
  • Advanced tree-shaking
  • Smart code splitting

Vite 8 with Rolldown

Vite 8 (currently in beta) will be the first version to use Rolldown by default:

Main Changes

1. Tool Unification

// vite.config.js - Vite 8 (with Rolldown)
export default {
    // Single configuration for dev and prod
    rolldown: {
        target: 'es2020',
        // Same options work in both modes
    },
};

2. Improved Performance

# Vite 7 (Rollup)
vite build
Build completed in 12.5s

# Vite 8 (Rolldown)
vite build
Build completed in 2.3s

# 5x faster!

3. Dev/Prod Consistency

Same behavior guaranteed in both environments.

Migrating to Rolldown

For Vite Users

Migration will be almost transparent:

// 1. Update to Vite 8
npm install vite@8

// 2. Most projects work without changes
// 3. Common Rollup plugins are compatible

Plugin Compatibility

Plugin Status
@vitejs/plugin-vue Compatible
@vitejs/plugin-react Compatible
vite-plugin-pwa Compatible
rollup-plugin-visualizer Updating
Custom plugins Check

Release Timeline

2026

Q1 (Current):

  • Vite 8 Beta available
  • Rolldown in active development

Q2:

  • Vite 8 Release Candidate
  • Main plugins updated

Q3:

  • Vite 8 Stable Release
  • Rolldown as default

Conclusion

Rolldown represents a natural evolution of the JavaScript build tools ecosystem. By unifying ESBuild and Rollup into a single ultrafast tool, Vite 8 promises:

  • 5x faster builds
  • Consistent behavior between dev and prod
  • Superior development experience

For developers, the transition should be smooth in most cases. The important thing is to start testing now and report any issues found.

Let's go! 🦅

Comments (0)

This article has no comments yet 😢. Be the first! 🚀🦅

Add comments