I have spent the last six months on a project where we are using Spine.js as one of the main technologies. Spine is a JavaScript library that allows you to build client-side-heavy applications with the MVC pattern using CoffeeScript.
Coming into this project I had a fair amount of experience building client-side-heavy applications – my previous project was built using the JavaScriptMVC library so I was very aware of all the possible difficulties in using a library like this.
Overall I have been very impressed with Spine – there is definitely a steep learning curve (especially if you’re doing TDD), but it’s a fantastic framework to work with and once you understand the underlying concepts it becomes very powerful and actually quite easy to work with.