Domain Driven Design (DDD) is an architectural pattern that focuses on building an accurate model of the business logic of an application. While remaining separate from the other layers of the architecture, this conceptual model is closely tied to the software implementation of that model. The benefits of this approach include flexibility, maintainability, and an easing of communication between the technical and domain experts.
DDD is somewhat established on the server side, but has seen very little use in client-side applications. We will introduce Keel.js: a very light framework on top of Backbone.js, which allows us to easily build domain-driven applications. We will discuss both the benefits and challenges of this approach.