Jam vs Bower, what’s the difference?
As others mentioned in comments already there are a few alternatives in this space beyond just Jam and Bower.
Both aim to provide a way to package up your assets and manage the dependencies between them for the client. Both Bower and Jam appear to have made their debut in 2012 — Sept and May respectively.
Both are available through node/npm and if all you want to do is resolve dependencies between public libraries like backbone, underscore, jquery, etc. for your application then either solution will work and allow you some basic options to control version, where to put it in your project, and checking for updates.
Apologies if this is incorrect, but one additional limitation of Jam is that it does not allow you to create your own components for distribution in a private repository. This is something Bower allows you to configure as an endpoint in .bowerrc but I have as yet found a way to do that in Jam. Perhaps I haven’t searched well enough but it appears there is at least one fork for private-jam.
A few other good reads:
Using the following breakdown of some of the popular package managers you can decide what you want to use in you development. It compares factos as
- whether the manager uses
package.jsonor other form of descriptor
- what features does it support (scaffolding, compilation, having central registry)
- form of packages support (js only, js and css, js html and css)
- module types supported
- and of course some notes based on personal point of view