Benchmark data is stored in the gh-pages branch.
Minimal app project, no polyfill or Router.
Initial app project with TypeScript and nested routes enabled.
Created by @modern-js/create
.
Initial app project with Rspack.
app-initial
+ SSR.
app-initial
+ SSG.
app-initial
+ BFF + Koa.
app-initial
+ Tailwind CSS.
Arco Pro project.
app-arco-pro
+ SWC.
app-arco-pro
+ esbuild.
app-arco-pro
+ Rspack.
Initial module project.
Created by @modern-js/create
.
Utils project with npm-library-with-umd
buildPreset.
module-library
+ sourceMap: true
.
module-library
+ autoExternal: false
.
module-library
+ minify: 'esbuild'
+ target: 'es5'
.
module-library
+ minify: 'terser'
+ target: 'es5'
.
Component project with npm-component
buildPreset.
Minimal doc project.
Website project with rspress.
rspress-website
+ mdxRs: false
.
Rsbuild project + react.
Rsbuild project + vue3.
Rsbuild project + lit.
Rsbuild project + svelte.
Rsbuild project + vanilla.
Arco Pro project with Rsbuild.
Rsbuild project + React + 5k components + 5k node_modules.
Basic nodejs project with Rslib.
Basic react component project with Rslib.
The size of the bundles after the build.
minified-bundle-size
: the compressed size of bundles.gzipped-bundle-size
: the size of bundles after compression & gzip.dist-size
: file size of output in module.gzipped-dist-size
: file size of output in module after gzip.initial-js-size
: initial js size in rspress.gzip-initial-js-size
: initial js size in rspress after gzip.cjs-bundle-size
: the size of cjs formats outputs.cjs-gzip-bundle-size
: the size of cjs formats outputs after gzip.esm-bundle-size
: the size of esm formats outputs.esm-gzip-bundle-size
: the size of esm formats outputs after gzip.
dev-plugin-setup-time
: the time it takes from the start of the dev command to the completion of loading all plugins. Corresponding hooks:loadConfig -> loadPlugin
.dev-prepare-time
: the time taken from the time the plugins are loaded to the time when the build prep process is fully completed. Corresponding hooks:loadPlugin -> prepare
.dev-cold-boot-time
: the time it takes for the dev build to complete without caching. Corresponding hooks:beforeDev -> afterDev
.dev-hot-boot-time
: the time taken to complete the dev build with cache. Corresponding hooks:beforeDev -> afterDev
.build-plugin-setup-time
: the time taken from the start of the build command until all plugins have been loaded. Corresponding hooks:loadConfig -> loadPlugin
.build-prepare-time
: the time taken from when the plugins are loaded to when the build prep process is fully completed. Corresponding hooks:loadPlugin -> prepare
.build-cold-boot-time
: the time it takes for the build to complete without caching. Corresponding hooks:beforeBuild -> afterBuild
.build-hot-boot-time
: the time it takes to complete a build with caching. Corresponding hooks:beforeBuild -> afterBuild
.build-cjs-time
: the time it takes to complete a build task for cjs in module build. Corresponding hooks:beforeBuildTask -> afterBuildTask
.build-esm-time
: the time it takes to complete a build task for esm in module build. Corresponding hooks:beforeBuildTask -> afterBuildTask
.build-dts-time
: the time it takes to complete a build task for dts in module build. Corresponding hooks:beforeBuildTask -> afterBuildTask
.build-cjs-js-time
: the js bundle time it takes to complete a build task for cjs in Rslib.build-esm-js-time
: the js bundle time it takes to complete a build task for esm in Rslib.build-cjs-total-time
: the total time it takes to complete a build task for cjs in Rslib.build-esm-total-time
: the total time it takes to complete a build task for esm in Rslib.route-generate-time
: the time it takes to generate routes in rspress. Corresponding hooks:beforeBuild -> routeGenerated
.before-dev-time
: the time it takes for the dev command to initialize, in other words, cli cold boot time.before-build-time
: the time it takes for the build command to initialize, in other words, cli cold boot time.
Install npm dependency related metrics.
install-size
: the size of node_modules after yarn install .cold-install-time
: yarn install time, with cache and lock file.hot-install-time
: yarn install time, without cache and lock file.dependencies-count
: the total number of dependencies after yarn install.
pnpm run install:webiste
pnpm run dev:website
GitHub Actions
-> Deploy Website
-> Run Workflow
.
cd scripts
pnpm start RSBUILD rsbuild-react
GitHub Actions
-> Manual
MIT License.