gatsby-plugin-minify-html
v1.0.5
Published
A Gatsby plugin to minify HTML files
Maintainers
Readme
gatsby-plugin-minify-html
A Gatsby plugin to minify HTML files
Table of Contents
Installation
Install with yarn:
yarn add gatsby-plugin-minify-htmlOr with npm:
npm install --save gatsby-plugin-minify-htmlUsage
After installing gatsby-plugin-minify-html, add it to the plugins array in gatsby-config.js:
module.exports = {
plugins: ['gatsby-plugin-minify-html']
};If you’re using gatsby-plugin-brotli, gatsby-plugin-zopfli, or other plugins that use the Gatsby Node APIs onPostBuild, make sure they are listed after this plugin:
// good
module.exports = {
plugins: [
'gatsby-plugin-minify-html',
'gatsby-plugin-brotli'
]
};
// bad
module.exports = {
plugins: [
'gatsby-plugin-brotli', // should be placed after 'gatsby-plugin-minify-html'
'gatsby-plugin-minify-html'
]
};Options
This plugin uses html-minifier-terser. To customize options, add to config: { }.
See the default options enabled by this plugin in minify-html-plugin.js:
| Name | Type | Default | Description |
| :-----------------------------: | :-------: | :-----: | :--------------------------------------------------------------------------------------------------: |
| collapseWhitespace | Boolean | true | Collapse white space that contributes to text nodes in a document tree |
| minifyCSS | Boolean | true | Minify CSS in style elements and style attributes |
| minifyJS | Boolean | true | Minify JavaScript in script elements and event attributes |
| removeComments | Boolean | true | Strip HTML comments |
| removeScriptTypeAttributes | Boolean | true | Remove type="text/javascript" from script tags. Other type attribute values are left intact |
| removeStyleLinkTypeAttributes | Boolean | true | Remove type="text/css" from style and link tags. Other type attribute values are left intact |
See all html-minifier-terser options in the Options Quick Reference.
Example
gatsby-config.js
module.exports = {
plugins: [
{
resolve: 'gatsby-plugin-minify-html',
options: {
debug: true, // debug optional, default false
config: {
// Enabled default by this plugin
collapseWhitespace: false,
minifyCSS: false,
minifyJS: false,
removeComments: false,
removeScriptTypeAttributes: false,
removeStyleLinkTypeAttributes: false,
// Disabled default by html-minifier-terser
sortAttributes: true,
useShortDoctype: true
}
}
}
]
};When the option debug: true, you can see generated logs. Example logs:
Minify HTML files in the public directory, total HTML files 7:
public/404/index.html > reduced 0.20%.
public/index.html > reduced 0.19%.
...Supports
If you’re enjoying it or want to support development, feel free to donate. Thank you! ❤️
Contributing
Want to contribute? Read the Contributing.
License
Released under the MIT License.
