Socket
Socket
Sign inDemoInstall

html-compression-webpack-plugin

Package Overview
Dependencies
88
Maintainers
1
Versions
5
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    html-compression-webpack-plugin

Prepare compressed versions of assets to serve them with Content-Encoding.


Version published
Maintainers
1
Install size
11.4 MB
Created

Readme

Source

HTML compression plugin for webpack

Info

The compression-webpack-plugin didn't compress HTML files. This plugin aims to solve that.

Usage

Credits to @sokra for the code from compression-webpack-plugin (https://github.com/webpack/compression-webpack-plugin) and other that contributed to it. Link to NPM: https://www.npmjs.com/package/html-compression-webpack-plugin

var HTMLCompressionPlugin = require("html-compression-webpack-plugin");
module.exports = {
	plugins: [
		new HTMLCompressionPlugin({
			testHTML: /\.html$/,
			test: /.*\.(css|js)$/i,
			asset: '[path].gz',
			algorithm: 'gzip',
			threshold: 0,
			minRatio: 0.0,
			deleteOriginalAssets: true
	})
	]
}

Arguments:

  • asset: The target asset name. [file] is replaced with the original asset. [path] is replaced with the path of the original asset and [query] with the query. Defaults to "[path].gz[query]"
  • algorithm: Can be a function(buf, callback) or a string. For a string the algorithm is taken from zlib (or zopfli for zopfli). Defaults to "gzip".
  • deleteOriginalAssets: Whether to delete the original assets or not. Defaults to false.
  • test: All assets matching this RegExp are processed. Defaults to /.*\.(js|css)$/i
  • testHTML: All assets matching this RegExp are processed. This will happen in the emit phase. Defaults to /\.html$/
  • threshold: Only assets bigger than this size are processed. In bytes. Defaults to 0.
  • minRatio: Only assets that compress better that this ratio are processed. Defaults to 0.8.

Option Arguments for Zopfli (see node-zopfli doc for details):

  • verbose: Default: false,
  • verbose_more: Default: false,
  • numiterations: Default: 15,
  • blocksplitting: Default: true,
  • blocksplittinglast: Default: false,
  • blocksplittingmax: Default: 15

Example

To try out the example:

node example/run-to-bundle-example-project.js

The resulting files will be created example/build folder.

License

MIT (http://www.opensource.org/licenses/mit-license.php)

FAQs

Last updated on 01 Mar 2017

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc