@@ -27,7 +27,7 @@ Benchmark comparing JavaScript bundlers and build tools ([Rspack](https://github
27
27
28
28
### react-1k
29
29
30
- 1000 React components + 1500 modules in node_modules. (Most components are dynamic imported)
30
+ A React app with 1,000 components and 1,500 modules from node_modules, using dynamic imports to simulate SPA.
31
31
32
32
``` bash
33
33
CASE=react-1k pnpm benchmark
@@ -59,7 +59,7 @@ CASE=react-1k pnpm benchmark
59
59
60
60
### react-5k
61
61
62
- 5000 React components + 5000 modules in node_modules. (Most components are dynamic imported)
62
+ A React app with 5,000 components and 5,000 modules from node_modules, using dynamic imports to simulate SPA.
63
63
64
64
``` bash
65
65
CASE=react-5k pnpm benchmark
@@ -91,7 +91,7 @@ CASE=react-5k pnpm benchmark
91
91
92
92
### react-10k
93
93
94
- 10000 React components + 10000 modules in node_modules. (Most components are dynamic imported)
94
+ A React app with 10,000 components and 10,000 modules from node_modules, using dynamic imports to simulate SPA.
95
95
96
96
``` bash
97
97
CASE=react-10k pnpm benchmark
@@ -121,6 +121,32 @@ CASE=react-10k pnpm benchmark
121
121
| Vite (SWC) 7.0.0 | 5369.2kB | 1409.3kB |
122
122
| webpack (SWC) 5.99.9 | 5993.4kB | 1464.6kB |
123
123
124
+ ### rome
125
+
126
+ A complex TypeScript Node.js project that includes multiple packages from the [ rome] ( https://github.com/rome/tools ) toolchain.
127
+
128
+ ``` bash
129
+ CASE=rome pnpm benchmark
130
+ ```
131
+
132
+ #### Build performance
133
+
134
+ | Name | Prod build |
135
+ | ---------------------- | ---------- |
136
+ | Rspack CLI 1.4.6 | 742ms |
137
+ | Rsbuild 1.4.6 | 787ms |
138
+ | Rolldown 1.0.0-beta.25 | 272ms |
139
+ | webpack (SWC) 5.100.0 | 5548ms |
140
+
141
+ #### Bundle size
142
+
143
+ | Name | Total size | Gzipped size |
144
+ | ---------------------- | ---------- | ------------ |
145
+ | Rspack CLI 1.4.6 | 1009.3kB | 270.9kB |
146
+ | Rsbuild 1.4.6 | 1009.3kB | 270.9kB |
147
+ | Rolldown 1.0.0-beta.25 | 1016.4kB | 273.6kB |
148
+ | webpack (SWC) 5.100.0 | 1023.3kB | 272.0kB |
149
+
124
150
## Run locally
125
151
126
152
Run the ` benchmark.mjs ` script to get the results (requires Node.js >= 22):
0 commit comments