close

Introduction

Rsbuild is a high-performance build tool powered by Rspack. It provides carefully designed defaults for an out-of-the-box development experience while fully leveraging Rspack's performance.

Rsbuild provides a rich set of build features, including support for TypeScript, JSX, Sass, Less, CSS Modules, Wasm, and more. It also supports Module Federation, image compression, type checking, PostCSS, Lightning CSS, and additional features.

🚀 Performance

Powered by Rspack's Rust-based architecture, Rsbuild delivers blazing-fast performance to speed up your development workflow.

⚡️ Build 1000 React components:

Rsbuild

0ms dev
0ms build
0ms hmr

Vite + SWC

0.00s dev
0.00s build
0ms hmr

webpack + SWC

0.00s dev
0.00s build
0ms hmr

webpack + Babel

0.00s dev
0.00s build
0ms hmr

📊 Benchmark results from build-tools-performance.

💡 Comparisons

Rsbuild is comparable to Vite, Create React App, and Vue CLI. Each of these tools includes a built-in dev server, command-line tools, and sensible defaults for an out-of-the-box experience.

CRA / Vue CLI

You can think of Rsbuild as a modernized version of Create React App or Vue CLI, with these key differences:

  • The underlying bundler has been switched from webpack to Rspack, delivering 5 to 10 times better build performance.
  • It's decoupled from frontend UI frameworks and supports all frameworks via plugins, including React, Vue, Svelte, Solid, and more.
  • It is more extensible. You can extend Rsbuild through configurations, the Plugin API, and the JavaScript API.

Vite

Rsbuild has many similarities to Vite, as both aim to improve the frontend development experience. The main differences are:

  • Production consistency: Rsbuild uses Rspack for bundling in both development and production builds, ensuring high consistency between development and production outputs. Vite uses ESM during development for faster startup, but this approach can introduce inconsistencies between development and production outputs.
  • Ecosystem compatibility: Rsbuild is compatible with most webpack plugins and all Rspack plugins, while Vite is compatible with Rollup plugins. If you're using many plugins and loaders from the webpack ecosystem, migration to Rsbuild is more straightforward.
  • Module Federation: The Rsbuild team works closely with the Module Federation development team, providing first-class support for Module Federation to help you develop large web applications with micro-frontend architecture.

🔥 Features

Rsbuild has the following features:

  • Easy to configure: One of Rsbuild's goals is to give Rspack users out-of-the-box build capabilities so they can start web projects with zero configuration. Rsbuild also provides a semantic build configuration API to reduce the Rspack learning curve.

  • Performance-focused: Rsbuild integrates high-performance Rust-based tools from the community, including Rspack, SWC, and Lightning CSS, delivering first-class build speed and development experience.

  • Plugin ecosystem: Rsbuild has a lightweight plugin system and includes a range of high-quality official plugins. It is also compatible with most webpack plugins and all Rspack plugins, allowing you to use existing community or in-house plugins without rewriting code.

  • Stable artifacts: Rsbuild places a strong focus on build artifact stability. It ensures consistent artifacts in development and production builds, and automatically handles syntax downgrading and polyfill injection. Rsbuild also provides plugins for type checking and artifact syntax validation to prevent quality and compatibility issues from reaching production code.

  • Framework agnostic: Rsbuild is not coupled to any frontend UI framework. It supports frameworks like React, Vue, Svelte, Solid, and Preact through plugins, with plans to support more UI frameworks from the community in the future.

🦀 Rstack

Rstack is a unified JavaScript toolchain centered on Rspack, with high performance and consistent architecture.

Rstack

Rstack includes the following tools:

NameDescriptionVersion
RspackBundlernpm version
RsbuildBuild toolnpm version
RslibLibrary development toolnpm version
RspressStatic site generatornpm version
RsdoctorBuild analyzernpm version
RstestTesting frameworknpm version
RslintLinternpm version

🧑‍💻 Community

Come and chat with us on Discord! The Rstack team and users are active there, and we're always looking for contributions.

✨ Next step

Next, you may want to: