React vs Flutter vs Angular
React, Flutter and Angular are 3 of the most popular frameworks to build web apps and mobile apps.
- React is for web, its sister project React Native is for mobile apps. React is a library, only for "view" (UI components), it needs to work with other projects (like Flux / Redux) to build a fully functional website.
- Angular is also for web, unlike React, it is a "full" front-end framework.
- Flutter was originally only for mobile apps, but later extended to web apps with the release of Flutter 2 in 2021.
All 3 are open-source projects and can be found on GitHub
Popularity based on stars: React > Flutter > Angular
Big Tech Companies Behind the Projects
- React is from Meta (Facebook).
- Flutter and Angular are from Google.
The key difference between Facebook and Google is that Facebook has one single web stack (React + Hack), but Google has many different stacks. Flutter and Angular are just two out of many front-end frameworks:
- ad products (Google Ads, AdSense, etc) are mostly using AngularDart (in Dart);
- Google Cloud Console is using Angular (in TypeScript);
- Google Pay app is using Flutter (in Dart).
Angular vs React
- React is a UI library while Angular is a full front-end framework.
- Angular uses regular DOM; React uses virtual DOM.
- Angular uses two-way data binding; React uses on-way data binding.
- React is much smaller in size.
- React is easier to learn.
- Angular 2+ uses TypeScript; React can also use TypeScript, though Facebook uses Flow for static typing.
Angular.js vs Angular vs AngularTS vs AngularDart
- Angular version 1.x was called AngularJS and has been deprecated; version 2+ are called Angular (no "JS").
- Angular once had 2 flavors: Typescript (AngularTS) and Dart (AngularDart). With the release of Flutter (also based on Dart), AngularDart is now in maintenance mode, leaving AngularTS as the only flavor.
React is still the most popular front-end framework, and Facebook will likely keep investing in it. However Google keeps killing its projects and products (the most recent example in the front-end world is PolymerProject), it's hard to predict the fate of AngularTS and Flutter, especially that Google's most mission critical sites are not using either. Flutter and Dart sound promissing since they are key parts of the new Fuchsia OS, but again Fuchsia's fate is quite unpredictable.