facebook

react: Build Web and Native User Interfaces

React is a JavaScript library for building user interfaces on the web and in native apps. It uses declarative, component-based views to update interfaces when data changes, and supports server rendering with Node.js.

ActiveJavaScriptMITLibraryFrontendUI Library
Stars
251k
Forks
51.5k
Stars, last 16 days
+789
Last commit
3 days ago
Contributors
100+

Our take

Activeregular commits and releases

Health score

79/100

How it is scored
Activity
83
Community
94
Issues
68
Pull requests
71

+789 stars in the last 16 days

  • Releases more often than 81% of the projects we track
  • More contributors than 77% of the projects we track

React is a mature, actively maintained UI library with frequent releases and broad contributor participation, making it a strong choice for teams that want a flexible component-based foundation.

Good fit if

  • You are building a web interface or a React Native app and want declarative, composable UI.
  • You need to introduce a UI library gradually into an existing project.
  • You can work in a JavaScript and Node.js-based development environment and want a project with ongoing commits, releases, and issue handling.

Look elsewhere if

  • You need a complete application framework rather than a UI library, since React does not prescribe the rest of your stack.
  • Your project cannot use JavaScript or does not want a component-based approach.
All health signals
Last commit2026-10-15 (3 days ago)
Commits, last 90 days100+
Releases, last 12 months31 (latest v19.3.1, 2026-10-14)
Contributors100+ (top contributor: 11% of commits)
Issues closed, last 90 days18+ (typically closed in 3 days)
Pull requests merged, last 90 days32 (typically merged in 0 days)
Project age13 years

Checked on 2026-10-19 with the GitHub API.

Overview

React is a JavaScript library for building user interfaces on the web and in native apps. Its declarative, component-based approach helps teams describe what a view should show for a given state, then update that view as data changes.

React is designed to fit into existing projects as well as new ones. It can render on the server with Node.js and is also used to build mobile apps through React Native. The core repository focuses on evolving React itself; documentation and learning materials are available at react.dev.

Key Features

  • Build interfaces from encapsulated components and compose them into larger views.
  • Describe UI declaratively, with React updating the rendered interface when data changes.
  • Manage component state and pass rich JavaScript data through an application.
  • Adopt React incrementally in an existing project or use it for a new application.
  • Render on the server using Node.js.
  • Use React Native to build mobile applications.

Use Cases

  • Frontend teams building interactive web applications with reusable UI components.
  • Developers introducing interactive React views into an existing site without replacing its full stack.
  • Teams managing interfaces whose displayed content changes as application state or data changes.
  • Developers building mobile apps with React Native while using React's component model.
  • Applications that need server rendering with Node.js.

What you need

Detected in the repository

  • Node.js (from package.json)
  • Automated checks on GitHub Actions

License in plain words

MITpermissive

  • Commercial use: yes
  • Modify and redistribute: yes
  • You must keep: the copyright and license notice
  • Share your changes: no

A summary, not legal advice: the LICENSE file is what applies.

Getting Started

Start with the React Quick Start, or follow the guide for adding React to an existing project. See the repository README for project and contribution details.

Alternatives

  • inferno: Inferno uses a React-like component model and virtual DOM, with optimizations focused on high-performance client- and server-rendered interfaces.
  • htmx: htmx builds server-driven interfaces by issuing requests and updating HTML through attributes, rather than relying on a client-side component library.
ProjectLanguageLicenseStarsStatus
reactJavaScriptMIT251kActive
infernoJavaScriptMIT16.5kActive
htmxJavaScriptOther49.5kActive

Considerations

React is the UI layer, not a complete application stack, so teams must choose and integrate the surrounding tools that their project needs. The repository lists Node.js as a runtime requirement. React is MIT licensed; review the license when distributing or incorporating it.

Found this useful?

Share it with someone who would like react.

Comparisons