Bower
Bower

3.6K
87
927
npm
npm

16.8K
454
1.6K
Add tool

Bower vs npm: What are the differences?

Developers describe Bower as "A package manager for the web". Bower is a package manager for the web. It offers a generic, unopinionated solution to the problem of front-end package management, while exposing the package dependency model via an API that can be consumed by a more opinionated build stack. There are no system wide dependencies, no dependencies are shared between different apps, and the dependency tree is flat. On the other hand, npm is detailed as "The package manager for JavaScript". npm is the command-line interface to the npm ecosystem. It is battle-tested, surprisingly flexible, and used by hundreds of thousands of JavaScript developers every day.

Bower and npm can be categorized as "Front End Package Manager" tools.

"Package management", "Open source" and "Simple" are the key factors why developers consider Bower; whereas "Best package management system for javascript", "Open-source" and "Great community" are the primary reasons why npm is favored.

Bower and npm are both open source tools. npm with 17.2K GitHub stars and 3.17K forks on GitHub appears to be more popular than Bower with 15.2K GitHub stars and 1.97K GitHub forks.

reddit, Instacart, and Starbucks are some of the popular companies that use npm, whereas Bower is used by MIT, Bodybuilding.com, and PedidosYa. npm has a broader approval, being mentioned in 2605 company stacks & 2586 developers stacks; compared to Bower, which is listed in 803 company stacks and 393 developer stacks.

What is Bower?

Bower is a package manager for the web. It offers a generic, unopinionated solution to the problem of front-end package management, while exposing the package dependency model via an API that can be consumed by a more opinionated build stack. There are no system wide dependencies, no dependencies are shared between different apps, and the dependency tree is flat.

What is npm?

npm is the command-line interface to the npm ecosystem. It is battle-tested, surprisingly flexible, and used by hundreds of thousands of JavaScript developers every day.

Want advice about which of these to choose?Ask the StackShare community!

Why do developers choose Bower?
Why do developers choose npm?
What are the cons of using Bower?
What are the cons of using npm?
What companies use Bower?
What companies use npm?
What are some alternatives to Bower and npm?
Yarn
Yarn caches every package it downloads so it never needs to again. It also parallelizes operations to maximize resource utilization so install times are faster than ever.
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.
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.
NuGet
A free and open-source package manager designed for the Microsoft development platform. It is also distributed as a Visual Studio extension.
Composer
Composer is a tool for dependency management in PHP. It allows you to declare the libraries your project depends on and it will manage (install/update) them for you.
See all alternatives
What tools integrate with Bower?
What tools integrate with npm?
    No integrations found
      No integrations found
      Decisions about Bower and npm
      No stack decisions found
      Interest over time
      Reviews of Bower and npm
      No reviews found
      How developers use Bower and npm
      Avatar of lispur
      lispur uses npmnpm

      Utilize npm private module to package shared library for different React / React Native clients. Shareable code goes here. Basically deliver Redux Store with Firebase integration and business logic in a library. Each React app utilizes this while delivering a device/target specific UI.

      Avatar of Refractal
      Refractal uses npmnpm

      If you're using Node or Gulp, you can't help but use NPM in some form or another. Fortunately that's never a bad thing with the massive package repository and glowing ecosystem making it a breeze to work with.

      Avatar of Promethean TV
      Promethean TV uses BowerBower

      PrometheanTV utilizes Bower in the Broadcast Center Tool to manage 3rd party front end dependencies including things like Angular, Bootstrap, etc.

      Avatar of Oomba
      Oomba uses npmnpm

      We manages all of our packages, including Angular JS through npm. It is a very quick way of downloading / installing packages into your project.

      Avatar of Thibault Maekelbergh
      Thibault Maekelbergh uses npmnpm

      Module is published as bpost on the npm registry. Tasks for the module are also defined as npm run tasks with commit hooks for git

      Avatar of Andrew Faulkner
      Andrew Faulkner uses BowerBower

      Bower was used for a small amount of package management. npm was used everywhere but a few edge cases that only worked with Bower.

      Avatar of Andrew Gatenby
      Andrew Gatenby uses npmnpm

      It's the front-end version of Composer, so is pretty essential to pull in packages that can be tracked and kept up to date.

      Avatar of Kamarool Karim
      Kamarool Karim uses BowerBower

      It easily for me to have this kind of technology. She allow me to manage my front-end package

      Avatar of Reactor Digital
      Reactor Digital uses BowerBower

      To provide any vendor modules used within the frontend build, mainly AngularJS libraries.

      Avatar of Casey Smith
      Casey Smith uses BowerBower

      Package manager for front-end JavaScript dependencies; part of the overall build pipeline.

      How much does Bower cost?
      How much does npm cost?
      Pricing unavailable
      Pricing unavailable
      News about Bower
      More news