Web Applications have become increasingly complex – and it is very common to have applications that require interaction with third-party applications. On the other hand, our end users like to have a single place for all these interactions. This suggests the need for composing a webpage from multiple independent applications while at the same providing a unified user interaction model. Our team has developed a JavaScript based Plugin Architecture for Intuit’s QuickBooks Online (QBO) that enables this. We will share our experiences and learnings in building this. We talk about different approaches to integration, architectural/design principles underlying our implementation and user facing (and experience related) aspects of a good integration. We discuss design details such as access, attach points etc., usage of easyXDM to circumvent same origin policy limitations, sandboxing plugins and experimentation framework.

https://jsfoo.talkfunnel.com/2015/67-javascript-plugin-architecture-for-single-page-app