StackShareStackShare
Follow on
StackShare

Discover and share technology stacks from companies around the world.

Product

  • Stacks
  • Tools
  • Companies
  • Feed

Company

  • About
  • Blog
  • Contact

Legal

  • Privacy Policy
  • Terms of Service

© 2025 StackShare. All rights reserved.

API StatusChangelog
Webpack
Bywebpackwebpack

Webpack

#4in Build Automation
Discussions181
Followers28.1k
OverviewDiscussions181

What is Webpack?

A bundler for javascript and friends. Packs many modules into a few bundled assets. Code Splitting allows to load parts for the application on demand. Through "loaders" modules can be CommonJs, AMD, ES6 modules, CSS, Images, JSON, Coffeescript, LESS, ... and your custom stuff.

Webpack is a tool in the Build Automation category of a tech stack.

Key Features

Bundles ES Modules, CommonJS, and AMD modules (even combined)Can create a single bundle or multiple chunks that are asynchronously loaded at runtime (to reduce initial loading time)Dependencies are resolved during compilation, reducing the runtime sizeLoaders can preprocess files while compiling, e.g. TypeScript to JavaScript, Handlebars strings to compiled functions, images to Base64, etcHighly modular plugin system to do whatever else your application requires

Webpack Pros & Cons

Pros of Webpack

  • ✓Most powerful bundler
  • ✓Built-in dev server with livereload
  • ✓Can handle all types of assets
  • ✓Easy configuration
  • ✓Laravel-mix
  • ✓Overengineered, Underdeveloped
  • ✓Makes it easy to bundle static assets
  • ✓Webpack-Encore
  • ✓Better support in Browser Dev-Tools
  • ✓Redundant

Cons of Webpack

  • ✗Hard to configure
  • ✗No clear direction
  • ✗Fire and Forget mentality of Core-Developers
  • ✗Loader architecture is quite a mess (unreliable/buggy)
  • ✗Spaghetti-Code out of the box
  • ✗SystemJS integration is quite lackluster

Webpack Alternatives & Comparisons

What are some alternatives to Webpack?

gulp

gulp

Build system automating tasks: minification and copying of all JavaScript files, static images. More capable of watching files to automatically rerun the task when a file changes.

Grunt

Grunt

The less work you have to do when performing repetitive tasks like minification, compilation, unit testing, linting, etc, the easier your job becomes. After you've configured it, a task runner can do most of that mundane work for you—and your team—with basically zero effort.

rollup

rollup

It is a module bundler for JavaScript which compiles small pieces of code into something larger and more complex, such as a library or application. It uses the new standardized format for code modules included in the ES6 revision of JavaScript, instead of previous idiosyncratic solutions such as CommonJS and AMD.

Vite

Vite

It is an opinionated web dev build tool that serves your code via native ES Module imports during dev and bundles it with Rollup for production.

Parcel

Parcel

Parcel is a web application bundler, differentiated by its developer experience. It offers blazing fast performance utilizing multicore processing, and requires zero configuration.

Esbuild

Esbuild

It is an extremely fast JavaScript and CSS bundler and minifier. Current build tools for the web are 10-100x slower than they could be. The main goal of this project is to bring about a new era of build tool performance, and create an easy-to-use modern bundler along the way.

Webpack Integrations

Meatier, Webpacker, Backpack, EnvKey, CSS Blocks and 7 more are some of the popular tools that integrate with Webpack. Here's a list of all 12 tools that integrate with Webpack.

Meatier
Meatier
Webpacker
Webpacker
Backpack
Backpack
EnvKey
EnvKey
CSS Blocks
CSS Blocks
ImageBoss
ImageBoss
Jetpack
Jetpack
Font Awesome
Font Awesome
Just
Just
Laravel Elixir
Laravel Elixir
Buddy
Buddy
Phenomic
Phenomic

Webpack Discussions

Discover why developers choose Webpack. Read real-world technical decisions and stack choices from the StackShare community.

Zarema Khalilova
Zarema Khalilova

Frontend Team Lead at Uploadcare

Dec 4, 2018

Needs adviceonReact StorybookReact StorybookReactReactWebpackWebpack

React Storybook is one of the most favorite tools in our #Frontend team. When we start a new frontend part, we install storybook at first and create visual React components based on our design with usage stories in Storybook. So, we get a live version of design quickly and can sync with designers before developing of whole app and configure Webpack.

0 views0
Comments
Russel Werner
Russel Werner

Lead Engineer at StackShare

Dec 3, 2018

Needs adviceonReactReactGlamorousGlamorousApolloApollo

StackShare Feed is built entirely with React, Glamorous, and Apollo. One of our objectives with the public launch of the Feed was to enable a Server-side rendered (SSR) experience for our organic search traffic. When you visit the StackShare Feed, and you aren't logged in, you are delivered the Trending feed experience. We use an in-house Node.js rendering microservice to generate this HTML. This microservice needs to run and serve requests independent of our Rails web app. Up until recently, we had a mono-repo with our Rails and React code living happily together and all served from the same web process. In order to deploy our SSR app into a Heroku environment, we needed to split out our front-end application into a separate repo in GitHub. The driving factor in this decision was mostly due to limitations imposed by Heroku specifically with how processes can't communicate with each other. A new SSR app was created in Heroku and linked directly to the frontend repo so it stays in-sync with changes.

Related to this, we need a way to "deploy" our frontend changes to various server environments without building & releasing the entire Ruby application. We built a hybrid Amazon S3 Amazon CloudFront solution to host our Webpack bundles. A new CircleCI script builds the bundles and uploads them to S3. The final step in our rollout is to update some keys in Redis so our Rails app knows which bundles to serve. The result of these efforts were significant. Our frontend team now moves independently of our backend team, our build & release process takes only a few minutes, we are now using an edge CDN to serve JS assets, and we have pre-rendered React pages!

#StackDecisionsLaunch #SSR #Microservices #FrontEndRepoSplit

0 views0
Comments
Bastien Duret
Bastien Duret

CTO at Inato

Nov 30, 2018

Needs adviceonReactReactYarnYarnWebpackWebpack

At Inato, we wanted to separate our React components from our application code in order to standardize them and facilitate re-use. But we also wanted to be able to edit them and immediatly see the results in the application. We managed to make hot-reload work using Yarn workspaces and Webpack

0 views0
Comments
Lee Benson
Lee Benson

Nov 30, 2018

Needs adviceonReactReactGraphQLGraphQLApolloApollo

ReactQL is a React + GraphQL front-end starter kit. #JSX is a natural way to think about building UI, and it renders to pure #HTML in the browser and on the server, making it trivial to build server-rendered Single Page Apps. GraphQL via Apollo was chosen for the data layer; #GraphQL makes it simple to request just the data your app needs, and #Apollo takes care of communicating with your API (written in any language; doesn't have to be JavaScript!), caching, and rendering to #React.

ReactQL is written in TypeScript to provide full types/Intellisense, and pick up hard-to-diagnose goofs that might later show up at runtime. React makes heavy use of Webpack 4 to handle transforming your code to an optimised client-side bundle, and in throws back just enough code needed for the initial render, while seamlessly handling import statements asynchronously as needed, making the payload your user downloads ultimately much smaller than trying to do it by hand.

React Helmet was chosen to handle <head> content, because it works universally, making it easy to throw back the correct <title> and other tags on the initial render, as well as inject new tags for subsequent client-side views.

styled-components, Sass, Less and PostCSS were added to give developers a choice of whether to build styles purely in React / JavaScript, or whether to defer to a #@{css}|topic:477| #preprocessor. This is especially useful for interop with UI frameworks like Bootstrap, Semantic UI, Foundation, etc - ReactQL lets you mix and match #css and renders to both a static .css file during bundling as well as generates per-page <style> tags when using #StyledComponents.

React Router handles routing, because it works both on the server and in the client. ReactQL customises it further by capturing non-200 responses on the server, redirecting or throwing back custom 404 pages as needed.

Koa is the web server that handles all incoming HTTP requests, because it's fast (TTFB < 5ms, even after fully rendering React), and its natively #async, making it easy to async/await inside routes and middleware.

0 views0
Comments
Gordon Wintrob
Gordon Wintrob

Co-founder & CTO

Sep 21, 2018

Needs adviceonNext.jsNext.jsCreate React AppCreate React AppEmber.jsEmber.js

We needed a frontend framework for to make it easier to work with JavaScript. We chose Next.js since it maintains the flexibility of something like Create React App but gives some structure on how to organize the app similar to Ember.js.

Webpack and Babel are configured out of the box for #ServerSideRendering, #TreeShaking, and other nice #JS features.

0 views0
Comments

Try It

Visit Website

Adoption

On StackShare

Companies
4.77k
9AAAAB+4766
Developers
32.7k
YCJMMP+32681