Angular 2: Pros: - Easy to pick up because of my java background, - I know Angular 1.5 little bit. Learned it by debugging issues in the previous projects. - TypeScript's syntax looks very familiar.
Cons: - Unstable (beta). - Material Design 2 is also in beta. - It does not fully support many components. - Not many developers have adopted it.
ReactJS: Pros: - Stable. - Large and very active community.
Cons: - Pure Javascript, which will be a big shift for me. - Not sure if all the great features of React are applicable for my app.
One of the biggest factor to consider that I will be hiring freelancers to do the frontend work. It is very important for me to choose a framework so that I can find good freelancers without spending a fortune.
I am also open to any other technology which fulfills these requirements.