Angular:
- It's a complete framework
- As its a framework it provides and enforce the application structure
- It includes all basic functionality modules (networking, state management
- It uses regular DOM which renders updates are slower than Virtual DOM used in React
- UI (HTML) & business logic (JS) are physcially seperated
- Its a two-way binding
- TypeScript used to implement components
- For Mobile it uses Ionic and Cordova libraries which are slower & web view
- Jasmine & Mocha are testing libraries
- Learning Curve is higher
- It can be easily scalable
- Popularity: dropped since AngularJS (Angular 1)
- Size: larger, resulting in longer load times and performance especially on mobile
- Google, Nike, Forbes, Upwork, General Motors, HBO, Sony are using Angular
- https://angular.io/
- https://github.com/angular
- GitHub stars: 50,000 / Contributors: 969
React:
- Its a small "View" library (doesn't include Model & Control)
- As its a library it doesn't provide and enforce any structure of your application
- It uses Virtual DOM, which renders updates faster than using regular DOM (in Angular)
- It uses JSX which combines UI (HTML) and business logic (JS) in the same file which leads to ease reading
- Components: emerging web components standard
- It uses one-way binding
- It uses ES6/7 JavaScript. You can use Typescript or Flow if you want
- For Mobile, React Native is used which is faster than Angular applications
- Jest & Enzyme are familiar testing libraries
- Learning Curve is lower than Angular but here you learn only the implementation of View part alone thus you will have to learn large number of 3rd party libraries like for State management (React-Redux or MobX), for Asynchronous calls (react-promise, react-thunk, or react-saga), etc.
- Its very ease to scale and test
- Popularity has increased exponentially
- Size of the applications are smaller so its faster than Angular
- Facebook, Airbnb, Uber, Netflix, Instagram, Whatsapp, Dropbox uses React
- For performance consider "React Fiber" which will increase the speed of React dramatically
- https://reactjs.org/
- https://github.com/facebook/react
- GitHub stars: 1,33,698 / Contributors: 1,304