I see that you shortlisted only 2 frameworks/libs (AngularJS and ReactJS) but there are quite a few choices. My choice and recommendation is VueJS. I think Vue has very simple API but is very flexible and very fast. It is very young library but it already has decent popularity (20k stars on GitHub and very steep positive curve on Google Trends) and nice ecosystem of plugins. It kind of solves the same problem as React (both are considered as Views in MV* patterns) but it works different under the hood. If you want to build more complex single page applications you have few Vue plugin libraries. Most notable are vue-router and vuex (FLUX implementation for Vue).
I tried a bit of Backbone, Angular and React before settling with VueJS. For me, it was ease of use that made Vue winner. Now I'm doing personal project with Vue, complex single page application and it's a joy to work with Vue
I had the same question some time ago. After reading a LOT of articles and tweaking Angular 1.x a bit I went with ReactJS.
First the learning curve with React I found it to be shorter and it allowed me to write pure Javascript which is something that I need to keep mastering.
Coming from back-end it had much more sense to me to use a programming language to render HTML semantics than injecting Javascript "superpowers" to HTML.
May be it would be better to add a poll here. I personally lately was trying to learn Angular and... nope. React seems to be simpler, and clearer. With Angular you very likely need to learn TypeScript, the ecosystem rather implies it. Nobody knows when the final version of Angular 2 will be released. In contrast, React is already very mature with a huge ecosystem and community. It becomes better and better. I frankly do not know what should be shown in the final release of Angular 2 that it be able to compete with React.
Purushoth
Full stack developer
Based on github community angular is the most popular framework now and second one is react. github.com/showcases/front-end-javascript-framewo…