Recently I was going through JsRender JsViews by Borris Moore. He has implemented both MVVM and normal template based two way live binding setup.
* Its interesting to see both MVVM and MVC co-existing.
* Filter and type converters/custom converters. Like in two way live binding again while saving data back to model sometimes the datatype gets lost. Some object {prop: true} becomes {prop: "true"} after two way live binding if I use a generic handler called {{value }}. I have seen converters in JsViews and Filters in AngularJS.
* I liked a few concepts about JsViews like some logic in template which is generally logic less. CanJs ofcourse supports EJS in while logic can be written. But in Mustache/Handlebar templates cannot execute complex code in conditional blocks which I wish it did. Personally I prefer mustache template because its syntax does not conflict with other serverside technologies I use like struts2/jsp/freemarker. However EJS's <%= %> syntax conflicts with jsp and ${} of jQuery tmpl conflicts with freemarker.
(Disclaimer: My last point is ofcourse context specific because of my choice of serverside technologies. Also I have not used JsViews or AngularJS extensively but I just thought of sharing my ideas)