Put in concise terms, WebPack is a module bundler. It bundles application source code into easily manageable chunks and loads that code from a server to a browser. Most users consider it a better alternative to the SystemsJS approach used throughout documentation.
WebPack Supports Cutting Edge Functionalities, Such As:
• Lazy loading, where the user can load bundles as needed
• Bundle splitting – separate app/vendor bundles
• Hot module reloading, where there are instant updates of React components without having to refresh
• Hashing – to bust cache - and source maps – to ease the debugging of minified versions.
WebPack features a rich plugin system, which most internal systems are based on. This lets the user customize it for their requirements and distribute the common plugins as open source. Its core idea is that of a dependency graph which makes it a useful and powerful software.
Some problems with WebPack are that its documentation is confusing for most newbies. They also find its page layout a bit problematic, along with random sidebars they can’t click on and animated logos that hinder reading. Fresh users also find its source code and configuration file syntax difficult to understand.
WebPack has a built-in dev server, which is a small app used for local development. Many users say that for big projects, WebPack cannot be used optimally without using dev server.