Lots have been changing lately in the front-end development scene. New JS frameworks and libraries appearing, great support and pathos for the already industry recognized ones lead to a very complicated answer about which is the best one.
But there is no such thing as the best one. One should choose the best which fits to the requirements. In order to do that, one must know and test the frameworks/libraries.
I’ve been playing with AngularJS in the past but in the following weeks I am going to test more Angular, Ember, React, Backbone, Ractive.js and some others.
A very good starting point is the TodoMVC project which showcases a simple Todo application implemented using the most popular MV* frameworks of today.