Would be nice to split ember into a number of opt out components(repos) so that devs consume only what they need with https://github.com/component/component/.
The idea is, you’d only install and use the components you need as:
component install emberjs/ember-debug // fetches https://github.com/emberjs/ember-debug
component install emberjs/ember-controls
component install emberjs/ember-metal
component install emberjs/ember-routing
component install emberjs/ember-states
component install emberjs/ember-views
...
Then build with
component build
Alternatively, the main component at https://github.com/emberjs/ember would include all those as:
// component.json
{
"name": "ember",
"version": "1.0.0",
"dependencies": {
"component/jquery": "*",
"wycats/handlebars": "*",
"emberjs/ember-debug": "*",
"emberjs/ember-test": "*",
...
}
}
Then a dev includes ember into his/her app as:
{
"name": "app",
"dependencies": {
"emberjs/ember": "*"
},
"scripts": [
"app.js"
]
}
//app.js
var Em = require('ember')
, App = Em.Application.create();
Added advantage is, we won’t need custom build steps.