Package management: npm or bower?

Should I be using npm or bower for my ember-cli dependencies? I’m talking about typical packages like moment.js, bootstrap, datetimepicker, etc? Often I’m seeing packages for these libraries available in both npm and bower.

A similar question: what is the purpose of ember install? I haven’t been able to find documentation for it. How is it different from just doing a regular npm install?

It will run any setup process that the addon defines via a default blueprint in the form of a blueprint that is named after the addon.

For example, if you ember install ember-intl it npm install’s and then invokes this blueprint https://github.com/yahoo/ember-intl/blob/master/blueprints/ember-intl/ automatically.

Before, you were required to npm install and then manually invoke the blueprint.

I would try and use npm for as much as you can, as there is talk of deprecating bower to avoid this confusion.

3 Likes