A package manager for the web
Bower 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.
Bower runs over Git, and is package-agnostic. A packaged component can be made up of any type of asset, and use any type of transport (e.g., AMD, CommonJS, etc.).
View complete docs on bower.io
$ npm install -g bower
See complete command line reference at bower.io/docs/api/
Installing packages and dependencies
# install dependencies listed in bower.json $ bower install # install a package and add it to bower.json $ bower install <package> --save # install specific version of a package and add it to bower.json $ bower install <package>#<version> --save
We discourage using bower components statically for performance and security reasons (if component has an
upload.php file that is not ignored, that can be easily exploited to do malicious stuff).
To uninstall a locally installed package:
$ bower uninstall <package-name>
prezto and oh-my-zsh users
oh-my-zsh, do not forget to
alias bower='noglob bower' or
bower install jquery\#1.9.1
Running commands with sudo
Bower is a user command, there is no need to execute it with superuser permissions.
However, if you still want to run commands with sudo, use
To use Bower on Windows, you must install msysgit correctly. Be sure to check the option shown below:
Note that if you use TortoiseGit and if Bower keeps asking for your SSH
password, you should add the following environment variable:
C:\Program Files\TortoiseGit\bin\TortoisePlink.exe. Adjust the
path if needed.
To use Bower on Ubuntu, you might need to link
nodejs executable to
sudo ln -s /usr/bin/nodejs /usr/bin/node
Bower can be configured using JSON in a
.bowerrc file. Read over available options at bower.io/docs/config.
Note that on Windows for tests to pass you need to configure Git before cloning:
git config --global core.autocrlf input
Copyright (c) 2015 Twitter and other contributors
Licensed under the MIT License