How it works
In React you write components: functions that take inputs (props) and return what should appear on screen, usually in JSX, an HTML-like syntax inside JavaScript. When data changes, React re-runs the affected components and updates only the parts of the page that actually changed. Hooks such as useState and useEffect give components memory and side effects.
React itself only draws the interface. Routing, data loading and server rendering come from a framework on top, such as Next.js or React Router, or from separate libraries. Recent versions added Server Components, which run only on the server, and the React Compiler, which handles much of the performance tuning that used to be done by hand. The same component model powers React Native for iOS and Android.
Meta created React and released it as open source in 2013. In 2026 it handed React, React Native and JSX to the React Foundation, hosted by the Linux Foundation, so the project no longer belongs to a single company.
React pros and cons
Pros
- Huge ecosystem of libraries, UI kits and tutorials
- Large hiring pool, since so many developers already know it
- Component model scales from one widget to a very large app
- Skills carry over to mobile apps through React Native
Cons
- Only the view layer, so routing, data and build choices are yours to make
- Many ways to do the same thing, which can confuse beginners
- Easy to ship too much JavaScript without a framework's help
When to use React
Pick it when
- Interactive web apps such as dashboards, editors and portals
- You want the widest choice of libraries and developers
- Web and mobile apps should share skills or code
Skip it when
- A mostly static content site, where plain HTML or Astro is lighter
- The team already knows Vue, Angular or Svelte well
React pricing
React vs the alternatives
Related terms
More in Frontend
Frameworks