Plugins

webpack has a rich plugin interface. Most of the features within webpack itself use this plugin interface. This makes webpack flexible.

Name Description

Name

Description

BannerPlugin

Add a banner to the top of each generated chunk

Add a banner to the top of each generated chunk

Name

Description

CommonsChunkPlugin

Extract common modules shared between chunks

Extract common modules shared between chunks

Name

Description

CompressionWebpackPlugin

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

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

Name

Description

ContextReplacementPlugin

Override the inferred context of a require expression

Override the inferred context of a require expression

Name

Description

CopyWebpackPlugin

Copies individual files or entire directories to the build directory

Copies individual files or entire directories to the build directory

Name

Description

DefinePlugin

Allow global constants configured at compile time

Allow global constants configured at compile time

Name

Description

DllPlugin

Split bundles in order to drastically improve build time

Split bundles in order to drastically improve build time

Name

Description

EnvironmentPlugin

Shorthand for using the DefinePlugin on process.env keys

Shorthand for using the DefinePlugin on process.env keys

Name

Description

EslintWebpackPlugin

A ESLint plugin for webpack

A ESLint plugin for webpack

Name

Description

HotModuleReplacementPlugin

Enable Hot Module Replacement (HMR)

Enable Hot Module Replacement (HMR)

Name

Description

HtmlWebpackPlugin

Easily create HTML files to serve your bundles

Easily create HTML files to serve your bundles

Name

Description

IgnorePlugin

Exclude certain modules from bundles

Exclude certain modules from bundles

Name

Description

LimitChunkCountPlugin

Set min/max limits for chunking to better control chunking

Set min/max limits for chunking to better control chunking

Name

Description

MinChunkSizePlugin

Keep chunk size above the specified limit

Keep chunk size above the specified limit

Name

Description

MiniCssExtractPlugin

creates a CSS file per JS file which requires CSS

creates a CSS file per JS file which requires CSS

Name

Description

NoEmitOnErrorsPlugin

Skip the emitting phase when there are compilation errors

Skip the emitting phase when there are compilation errors

Name

Description

NormalModuleReplacementPlugin

Replace resource(s) that matches a regexp

Replace resource(s) that matches a regexp

Name

Description

NpmInstallWebpackPlugin

Auto-install missing dependencies during development

Auto-install missing dependencies during development

Name

Description

ProgressPlugin

Report compilation progress

Report compilation progress

Name

Description

ProvidePlugin

Use modules without having to use import/require

Use modules without having to use import/require

Name

Description

SourceMapDevToolPlugin

Enables a more fine grained control of source maps

Enables a more fine grained control of source maps

Name

Description

EvalSourceMapDevToolPlugin

Enables a more fine grained control of eval source maps

Enables a more fine grained control of eval source maps

Name

Description

TerserPlugin

Uses Terser to minify the JS in your project

Uses Terser to minify the JS in your project

For more third-party plugins, see the list from awesome-webpack.