Webpack is a dependency bundler at heart. You declare dependencies in your
import statements; then webpack follows them, building a
dependency tree as it goes. From this tree it generates one or more bundles:
When webpack encounters an
import, it imports the contents of that file as
config file then it will first use those to process the file. Using this you can
import assets such as images or CSS, as well as code in other languages needing
transpilation such as SASS or TypeScript.
Webpack plugins extend webpack’s functionality beyond what can be done with loaders. Webpack has an extensive ecosystem and there are plugins for almost anything you’d want to do with a web app.