EmberJS Managing Dependencies


Ember utilizes NPM and Bower for overseeing conditions which are characterized in package.json for NPM and bower.json for Bower. For example, you may require introducing SASS for your templates which isn't introduced by Ember while creating Ember application. To achieve this, utilization the Ember Addons for sharing the reusable libraries. In the event that you need to introduce any CSS system or JavaScript datepicker conditions, at that point utilize the Bower bundle manager.


The Ember CLI can be utilized to introduce the Ember Addons by utilizing the accompanying direction −


coal introduce coal cli-backtalk 

The ember introduce command will spare every one of the conditions to the individual setup file.


It is a bundle supervisor for the web which deals with the segments of HTML, CSS, JavaScript or picture documents. It essentially keeps up and screens all bundles and looks at new updates. It utilizes the arrangement record bower.json to monitor applications set at the base of the Ember CLI project.

You can introduce the undertaking conditions by utilizing the accompanying order −


nook introduce <dependencies> - spare 


You can put the outsider JavaScript in the vendor/ organizer of your task which are not accessible as an Addon or Bower bundle and spot the claim resources, for example, robots.txt, favicon, and so on in the public/ envelope of your venture. The conditions which are not introduced by Ember while building up the Ember application, ought to be incorporated by utilizing the show record ember-cli-build.js.

AMD JavaScript modules

You can give the benefit way as the main contention and the rundown of modules and fares as the second contention. You can incorporate these benefits in the ember-cli-build.js show record as −


app.import('bower_components/ic-ajax/dist/named-amd/main.js', { 

sends out: { 

'ic-ajax': [ 









Environment Specific Assets

The distinctive resources can be utilized in various situations by characterizing object as first parameter which is a domain name and the estimation of an item ought to be utilized as resource in that condition. In the ember-cli-build.js show record, you can incorporate as −


app.import ({ 

improvement: 'bower_components/coal/ember.js', 

generation: 'bower_components/coal/ember.prod.js' 


Other Assets

Once every one of the advantages are set in the public/ organizer, they will get replicated into the dist/catalog. For example, in the event that you duplicate a favicon put at the public/pictures/favicon.ico envelope, this will get replicated into the dist/pictures/favicon.ico index. The outsider resources can be included physically in the vendor/ organizer or by utilizing the Bower bundle administrator by means of the import() alternative. The advantages which are not included by utilizing the import() alternative, won't be available in the last build.

For occasion, consider the accompanying line of code which brings the benefits into the dist/ folder.


app.import('bower_components/textual style wonderful/text styles/fontawesome-webfont.ttf'); 

The above line of code makes a textual style record in dist/text style magnificent/text styles/fontawesomewebfont.ttf. You can likewise put the above document at an alternate way as appeared beneath −


app.import('bower_components/textual style great/text styles/fontawesome-webfont.ttf', { 

destDir: 'resources'