Best way to separate client-specific Ember routes, components, etc from the core?


I’m working on a “generic” backend Ember system to interface with an API that will itself be extended on a client-to-client basis. The best possible solution for us would be to have all the core functionality (basic routes, layout, auth/session functionality, etc) in a separate repo so we can push improvements and bug fixes without having to update all client repos.

Is this possible to accomplish through an add-on, or through some other means?


I think addon is your best bet for now, you may also wish to keep an eye on engines.


Separate from what? :slight_smile: How many repositories you are going to end up with?


One for the core generic backend, one for client specific data (custom routes, dependencies, etc).

That way, if we have to push a bug fix for the generic backend across X deployments of the generic backend, it won’t be as big a headache.


I thought of keeping your base functionality in a base repo, connecting it to base repo as a submodule and inherit all your application objects not from Ember.XXX directly, but from your base ones. Will it work for you?


Yeah, that would work.