![]() | |
Developer(s) | Tobias Koppers, Sean Larkin, Johannes Ewald, Juho Vepsäläinen, Kees Kluskens, Even Stensberg and Webpack contributors |
---|---|
Initial release | 19 February 2014; 11 years ago (2014-02-19)[1] |
Stable release | |
Repository | github |
Written in | JavaScript |
Operating system | Linux,macOS,Windows |
Platform | Node.js |
License | MIT License[3][4] |
Website | webpack![]() |
Webpack is afree and open-source module bundler forJavaScript.[5][6][7][8] It is made primarily for JavaScript, but it can transform front-end assets such as HTML, CSS, and images if the corresponding loaders are included.[9] Webpack takes modules with dependencies and generates static assets representing those modules.[10]
Webpack takes the dependencies and generates adependency graph allowing web developers to use a modular approach for their web application development purposes. It can be used from the command line or can be configured using a configuration file which is namedwebpack.config.js. This file defines rules, plugins, etc., for a project. (Webpack is highly extensible via rules which allow developers to write custom tasks that they want to perform when bundling files together.)
Node.js is required to use Webpack.
Webpack providescode on demand using the monikercode splitting. Two similar techniques are supported by Webpack when it comes to dynamic code splitting. The first and recommended approach is to use theimport() syntax that conforms to theECMAScript proposal for dynamic imports. The legacy, Webpack-specific approach is to userequire.ensure.[11]
Webpack also provides a built-in development server,webpack-dev-server, that can be used as an HTTP server for serving files while developing. It also provides the capability to use hot module replacement (HMR), which updates code on a webpage without requiring the developer to reload the page.