Multiple apps architecture


I’ve started toying around with Ember in the hopes of replacing our current front-end solution. We are building a few applications that will share a common trunk of modules but also some specific parts for each app.

Regarding the common trunk, right now the best solution I could find was to create our common trunk Trunk = Ember.Application.extend(); and then create the app itself with App = Trunk.create() I assumed it would allow me to call our common modules using the Trunk namespace, but I’m having a bit of trouble binding templates and controllers together. I guess I’ll have to rely on views to declare the binding, or is there a way to make the automatic template-controller link work in the Trunk namespace?

At the moment I cut the problem short and used {{partial}} as a workaround since I only have a few actions and managing them straight in the application controller isn’t that big of a deal, but I’m afraid that will lead to a big bloat in the app controller.

I’m also a bit confused about the possible interaction between the Trunk and the App namespaces. Let’s say I have a activeLanguage property defined in AppController, but the language switcher module is part of the Trunk. Is there any way to bubble the action up to the proper controller?


This is how we set it up.

\Common \views \controllers \templates



And then

Common = Ember.namespace.create({ ... })
App1 = Ember.Application.create({ ... })

“AppN” will use common components created in “Common” namespace.