
The new bower.io - rayshan
http://bower.io/
======
brian_c
In a fair world, the time and energy that went into Bower would have been
spent making npm just a little bit better for front-end stuff. `npm dedupe` is
halfway there. Now I have to deal with two arbitrary sources of dependencies.

~~~
GlennS
Couldn't you say the same thing about time spent on npm which could have gone
into apt or yum?

~~~
pstop
The problem I have with apt, yum, etc... is that the packages for development
are so old that you're going to be compiling from source and managing your own
updates, which is exactly the problem a good package manager should solve.

~~~
stephendicato
The big difference is that packages that land in the official apt repositories
have been heavily tested by the apt repository maintainers. Anyone can push a
package to PyPI for example. There is a clear trade off between using packages
from apt/yum and your toolchain's package managers.

In practice, I do find it much easier to pin dependencies and install from my
toolchain's package manager (pip/PyPI).

------
boredprogrammer
Possibly a stupid question, but ... Can anybody explain to me the use case for
Bower/Yeoman?

Whenever I am adding javascript to a website I just use a cdn such as
[http://cdnjs.com/](http://cdnjs.com/)

Why would I use Bower instead of this? Is it more of a node.js thing? Or is it
something to do with hosting your own copies of the libraries instead of a CDN
(I thought this was frowned upon)

~~~
quarterto
Dependencies. For example, Backbone depends on Underscore, and simply writing
<script src="underscore.js"/><script src="backbone.js"/> encodes nothing about
that fact. There's nothing stopping you updating Backbone to say a 2.0 that
requires features in Underscore 2.0, but forgetting to update Underscore. On
the other hand, bower update backbone will see dependencies: {"underscore":
"^2.0"} in bower.js and update Underscore as well.

~~~
sphildreth
Is it something like NuGet for .NET packages but for Javascript? Does that
mean that an ASP.NET MVC application using NuGet wouldn't really have any
"need" for Bower?

~~~
atonse
It's similar but for you to not "need" bower but get the same from NuGet,
you'd have to make sure that every JS library you need is on NuGet.

------
edwinvdgraaf
What are reasons to use bower over NPM? I know that bower mainly focusses on
front-end libraries (such as jQuery or Bootstrap). But does it offer
functionality NPM doesn't have?

~~~
hcho
bower manages your script tags in the html file. It also supports partial
inclusion of libraries.

~~~
quarterto
> bower manages your script tags in the html file

no, it doesn't. bower has nothing to do with module loading.

~~~
hcho
you are technically right. It's the grunt bowerInstall.

~~~
abritishguy
FTFY:you are right

------
tbranyen
I've always thought of Bower as an easier-to-use Git submodule manager.

~~~
ciniglio
That's an interesting idea. Does it work well with non-js repositories?

~~~
ceejayoz
Yes. Twitter Bootstrap is a popular Bower repo.

------
saosebastiao
So I use a package manager (apt) to install a package manager (npm) to install
a package manager (bower). Am I going to blow my stack soon?

------
limsup
has anything changed other than the site design?

~~~
quarterto
Actually, pretty much everything _except_ the site design has changed:
[http://web.archive.org/web/20140517000522/http://bower.io/](http://web.archive.org/web/20140517000522/http://bower.io/)

~~~
callum85
Pretty much everything? What exactly? I can't see much different

~~~
recursive
Off the top of my head, this is new: "Bower requires Node and npm and Git."

I remember thinking it was very odd that the old version of the site said that
bower had no dependencies.

------
lukasm
Is this [http://stackoverflow.com/questions/20279792/how-to-update-
bo...](http://stackoverflow.com/questions/20279792/how-to-update-bower-json-
with-installed-packages) still the case?

e.g. I forgot to install a package with --save and I want to update
bower.json. With pip I just do pip freeze > requirements.txt

------
modarts
Why would I use bower over npm with browserify? Seems like a large step back.

