Options for build outputs.
The charset
config allows you to specify the character encoding for output files to ensure they are displayed correctly in different environments.
Whether to clean up all files under the output directory before the build starts (the output directory defaults to dist
).
Copies the specified file or directory to the dist directory, implemented based on rspack.CopyRspackPlugin.
For custom CSS Modules configuration.
Set the size threshold to inline static assets such as images and fonts.
Set the directory of the dist files. Rsbuild will output files to the corresponding subdirectory according to the file type.
By default, Rslib sets output.distPath
to:
Whether to emit CSS to the output bundles.
At build time, prevent some import
dependencies from being packed into bundles in your code, and instead fetch them externally at runtime.
In bundle mode, Rslib will automatically add the dependencies listed in the dependencies
, optionalDependencies
, and peerDependencies
fields of package.json
to output.externals
. See lib.autoExternal for more information.
It is important to note that output.externals
differs from resolve.alias. Check out resolve.alias documentation for more information.
Whether to add a hash value to the filename after the production build.
Rslib sets output.filenameHash
to false
by default.
Sets the filename of dist files.
By default, Rslib sets output.filename
based on format, see autoExtension for more information.
Whether to inline output scripts files (.js files) into HTML with <script>
tags.
Whether to inline output style files (.css files) into HTML with <style>
tags.
Configure how to handle the legal comment.
Whether to generate a manifest file that contains information of all assets, and the mapping relationship between entry module and assets.
Configure whether to enable code minification in production mode, or to configure minimizer options.
When output.minify
is not specified, Rslib will use a sane default value.
esm
, cjs
and umd
, only dead code elimination and unused code elimination will be performed. The default value is:mf
, since MF assets are loaded over the network, which means they will not be compressed by the application project. Therefore, they need to be minified in Rslib. The default value is:Specifies the range of target browsers that the project is compatible with.
Rslib will generate output.overrideBrowserslist
based on syntax, see ESX_TO_BROWSERSLIST to get the mapping value.
Through the output.polyfill
option, you can control the injection mode of the polyfills.
Rsbuild's output.polyfill
injects polyfills into the global scope, which can unexpectedly modify global variables for library consumers. For a non-global polyfill solution for browsers, please refer to Polyfill - Browser.
Used to set whether to generate source map files, and which format of source map to generate.
Setting the build target of Rsbuild.
Rslib sets output.target
to node
by default.
Check out the Solution to learn more about the build target.