Rsbuild

Rspack-powered build tool that gives web projects fast, zero-config bundling and a rich official plugin ecosystem.

Tool
npm
v2.2.3
3,375stars
MIT License

Repository Health

Pre-computed score based on development activity, maintenance, community, maturity, and trend momentum.How we score it →
88/100Excellent
Development Activity100
Maintenance100
Community64
Maturity48
Momentum40

Technical Analysis

AI-assessed by reading the actual repository — architecture, code quality, innovation, and documentation.How we score it →
90/100Excellent
Architecture85
Code Quality88
Innovation85
Learning Curve100

Rsbuild is a modern build tool for web applications, built on top of the Rust-based Rspack bundler. It packages Rspack’s raw bundling speed behind a semantic configuration API (source, output, server, dev, html, tools, performance, environments), so teams get out-of-the-box builds for React, Vue, Svelte, Solid, and Preact projects without hand-writing bundler config.

Beyond the config layer, Rsbuild ships its own dev server (HMR, HTTPS, proxying, error overlay), a CLI for dev/build/preview/inspect workflows, and a set of internal plugins that handle asset processing, code splitting, syntax downgrading, and polyfill injection to keep development and production artifacts consistent. It is part of the broader Rstack toolchain (Rspack, Rslib, Rspress, Rsdoctor) from the same maintainers (Bytedance’s web-infra-dev team).

What You Get

  • A CLI (rsbuild dev/build/preview/inspect) plus a programmatic createRsbuild() API for custom tooling and scripts
  • Official framework plugins (@rsbuild/plugin-react, -vue, -svelte, -solid, -preact) for zero-config JSX/SFC support and HMR
  • A built-in dev server with hot module replacement over WebSockets, HTTPS, request proxying, and an in-browser error overlay
  • Rust-based build performance from Rspack and SWC without needing to configure either bundler directly
  • An environments API for building multiple targets (browser, Node.js, worker) from one project config

Common Use Cases

  • Bundling a new web app with zero hand-written Rspack or webpack configuration
  • Migrating an existing webpack or Create React App project to a faster Rust-based build pipeline
  • Building framework-agnostic component libraries that need multiple output targets
  • Composing independently-built micro-frontends together via Module Federation

Under The Hood

Architecture Rsbuild’s core builds around createRsbuild() in src/createRsbuild.ts, which wires roughly thirty internal plugins (pluginAsset, pluginCss, pluginHtml, pluginServer, pluginSwc, pluginModuleFederation, and others under src/plugins/) into a PluginManager (src/pluginManager.ts) that validates plugin shape and orders setup hooks. The CLI (src/cli/) parses commands and delegates to build(), createDevServer(), and startPreviewServer(), which lean on rspackConfig.ts and configChain.ts (a chainable config builder) to translate a resolved RsbuildConfig into an actual Rspack configuration. This cleanly separates “what config means” (initConfigs.ts, defaultConfig.ts, mergeConfig.ts) from “how Rspack builds it” (createCompiler.ts, rspackConfig.ts) and from “how it serves and watches” (src/server/*, restart.ts for HMR) — the plugin registration order and the Rspack adapter layer are the areas with the widest blast radius if changed.

Tech Stack TypeScript makes up over 90% of the codebase, built on @rspack/core (the Rust-based Rspack bundler) and @swc/helpers for fast transforms. The dev server layers connect-next middleware, ws for HMR sockets, chokidar for file watching, sirv for static serving, and http-proxy-middleware/cors for request proxying. Config loading goes through jiti and @rstackjs/load-config to support TypeScript rsbuild.config.ts files, and CSS is processed via postcss/postcss-loader/css-loader/style-loader. The repo is a pnpm workspace with a dozen packages/* (core, create-rsbuild, plugin-react, plugin-vue, plugin-svelte, plugin-solid, plugin-preact, and more) sharing dependency versions through a pnpm catalog, and builds itself using the team’s own “rs” toolchain.

Code Quality The core package alone carries dozens of *.test.ts files covering assets, caching, CSS, environments, externals, and config merging, plus snapshot tests, run through the project’s own rs test task. TypeScript config extends a shared strict base with isolatedDeclarations enabled, and linting/formatting run through the team’s own rs lint/rs fmt tools plus cspell for spell-checking, all gated in GitHub Actions CI. Naming is consistent and every public type is exported from a dedicated types module, giving strong end-to-end type safety across the public API.

API Design Rsbuild’s public surface centers on one semantic RsbuildConfig object (source/output/server/dev/html/tools/performance/environments) that maps directly onto build concerns instead of exposing raw Rspack or webpack config. createRsbuild() plus official framework plugins gives near-zero-config startup for common stacks, while the tools.rspack escape hatch lets existing webpack or Rspack plugins run unmodified alongside Rsbuild’s own plugin system. The environments API lets one config target multiple runtimes from a single project, and the rsbuild inspect command surfaces the fully-resolved config for debugging, meaningfully lowering the learning curve compared to hand-writing Rspack or webpack setups directly.

Used by 8 apps in this directory

Go
92%
AGPL 3.0

BillionMail

Marketing

15,533

Self-hosted email server and marketing platform that gives you unlimited sending, full deliverability control, and AI-assisted campaigns without monthly fees.

View details
57
Repo Health
74
Technical
70
Dependency
Built with
Go92%
Updated 2 months ago
JavaScript
44%
Other

LimeSurvey

Forms Surveys

3,711

The world's most flexible open-source survey platform with 900+ templates, conditional logic, 80+ languages, and full GDPR compliance for any scale.

View details
85
Repo Health
62
Technical
62
Dependency
Built with
JavaScript44%
PHP34%
CSS12%
Updated 2 days ago
TypeScript
99%
Other

NocoBase

No Code Platforms · Low Code Platforms

24,071

Open-source AI + no-code platform that lets coding agents and people collaborate to build business systems fast on proven infrastructure.

View details
94
Repo Health
81
Technical
63
Dependency
Built with
TypeScript99%
Updated today
TypeScript
85%
GPL 3.0

Notesnook

Note Taking · File Storage · Security

14,533

End-to-end encrypted, open-source note-taking where your data stays yours — even from the server.

View details
90
Repo Health
84
Technical
60
Dependency
Built with
TypeScript85%
JavaScript12%
Updated 2 days ago
TypeScript
88%
MIT

Plasmic

CMS · Low Code Platforms · No Code Platforms

6,993

The open-source visual builder that lets teams design React apps and websites with drag-and-drop while integrating seamlessly with your codebase.

View details
81
Repo Health
78
Technical
64
Dependency
Built with
TypeScript88%
Updated yesterday
TypeScript
96%
Other

Refly

No Code Platforms · AI Development · Automation

7,502

Build deterministic, versioned agent skills from natural language—run them anywhere from Claude Code to Slack.

View details
64
Repo Health
76
Technical
63
Dependency
Built with
TypeScript96%
Updated 1 months ago
JavaScript
75%
AGPL 3.0

Twake Drive

File Storage · Collaboration

981

Open-source, self-hosted file manager with collaborative drives, AI-powered summarization, and OnlyOffice document editing for teams who want full data sovereignty.

View details
90
Repo Health
78
Technical
72
Dependency
Built with
JavaScript75%
TypeScript23%
Updated 3 days ago
TypeScript
85%
Other

Webiny JS

Ecommerce · Blogging · CMS

8,032

Open-source, self-hosted CMS on AWS serverless — a TypeScript framework you extend with code, not a product you configure through a UI.

View details
90
Repo Health
86
Technical
62
Dependency
Built with
TypeScript85%
JavaScript14%
Updated yesterday

Join founders buildingwith open source

Opinionated takes, migration guides, cost-saving tips, and insights from the open source ecosystem.

Subscribe on Substack
Join 750+ subscribers

Search