CanJS balances rich features and ease of use
Choosing the right web development framework
CanJS features live binding templates, computed values, and routes. It includes several packages, e.g. can.Construct (inheritable constructor functions), can.Observe (key-value binding), and can.Model (observes connected to a RESTful JSON interface).
Applications build with CanJS are quick and their performance is highly optimized. Moreover, it is memory safe, which is extremely important for long-existing and dynamic pages.