@roots/bud-minify
CSS and JS minification for bud.js
Installation
Install @roots/bud-minify to your project.
Yarn:
yarn add @roots/bud-minify --dev
npm:
npm install @roots/bud-minify --save-dev
Options
bud.minify.js
Option | type | Default |
---|
minify | TerserPlugin.MinimizerImplementation | terser |
include | TerserPlugin.BasePluginOptions['include'] | undefined |
exclude | TerserPlugin.BasePluginOptions['exclude'] | undefined |
extractComments | TerserPlugin.BasePluginOptions['extractComments'] | false |
parallel | TerserPlugin.BasePluginOptions['parallel'] | true |
terserOptions | TerserPlugin.TerserOptions | [object] |
bud.minify.css
Option | type | Default |
---|
minify | CSSMinimizerPlugin.MinimizerImplementation | lightningcss |
test | CSSMinimizerPlugin.BasePluginOptions['test'] | undefined |
include | CSSMinimizerPlugin.BasePluginOptions['include'] | undefined |
exclude | CSSMinimizerPlugin.BasePluginOptions['exclude'] | undefined |
parallel | CSSMinimizerPlugin.BasePluginOptions['parallel'] | true |
minimizerOptions | CSSMinimizerPlugin.BasePluginOptions['minimizerOptions'] | [object] |
bud.minify.js
bud.minify.js.getInclude
Get the value of include
bud.minify.js.getInclude();
Set the value of include
bud.minify.js.setInclude(/.*/);
bud.minify.js.exclude
Get the value of exclude
bud.minify.js.getExclude();
Set the value of exclude
bud.minify.js.setExclude(/.*/);
bud.minify.js.minify
Get the value of minify
.
bud.minify.js.getMinify();
Set the value of minify
. Since the value is a function you must wrap it in a callback.
const dubiousMinifier = async (input: unknown) => ({
code: Object.values(input).join(`\n`).replace(/\/\//g, `// 💸`),
});
bud.minify.js.setMinify(() => dubiousMinifier);
bud.minify.js.parallel
Get the value of parallel
.
bud.minify.js.getParallel();
Set the value of parallel
.
bud.minify.js.setParallel(true);
Get the value of extractComments
.
bud.minify.js.getExtractComments();
Set the value of extractComments
.
bud.minify.js.setExtractComments(true);
bud.minify.js.terserOptions
Get the value of terserOptions
.
bud.minify.js.getTerserOptions();
Set the value of terserOptions
.
bud.minify.js.setTerserOptions((options) => ({
...options,
mangle: false,
}));
Remove comments from output:
export default async (bud) => {
bud.minify.js.dropComments();
};
bud.minify.js.dropConsole
Remove console.*
statements from output.
export default async (bud) => {
bud.minify.js.dropConsole();
};
Contributing
Contributions are welcome from everyone.
We have contribution guidelines to help you get started.
License
@roots/bud-minify is licensed under MIT.
Keep track of development and community news.
bud.js is an open source project and completely free to use.
However, the amount of effort needed to maintain and develop new features and projects within the Roots ecosystem is not sustainable without proper financial backing. If you have the capability, please consider sponsoring Roots.