Chapter 5. Durandal – the Knockout Framework
In the previous chapter, we looked at how to use RequireJS and SammyJS with Knockout, to add more standard functionality to our frontend stack with module definitions and client-side routing. Both of these concepts have become very common in the JavaScript world; you might even consider them as a standard for modern web applications. Knockout is a library and not a framework, in that it fills a specific role—data-binding—instead of trying to be the entire development framework for the frontend. This leaves a lot of decisions to be made if you want to create a modern JavaScript client, which can be burdensome, time-consuming, and, if your team is divided, contentious. Durandal is a framework that attempts to make many of these decisions while still keeping Knockout's MVVM philosophy in mind.
Durandal was created by Blue Spire, whose principal developer, Rob Eisenberg, also created the popular WPF framework Caliburn...