# react/react

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/react-react).**

245,916 stars · 51,060 forks · JavaScript · MIT

## Links

- GitHub: https://github.com/react/react
- Homepage: https://react.dev
- awesome-repositories: https://awesome-repositories.com/repository/react-react.md

## Topics

`declarative` `frontend` `javascript` `library` `react` `ui`

## Description

React is a JavaScript library for building user interfaces from encapsulated, reusable components. It renders views declaratively, automatically updating only the parts of the interface that change when underlying data shifts, while leaving stable sections untouched.

Its rendering engine breaks work into incremental, prioritised units that can pause, resume, or abort without blocking the main thread. A diffing algorithm computes minimal changes between staged UI trees, and core rendering logic remains decoupled from any specific output target. State and side-effect logic attach to functional components through a call-order mechanism, letting reusable behaviour compose with predictable data flows from parent to child.

The same component model targets web browsers, server environments via Node, and native mobile platforms, so interface code travels across contexts without rewriting core logic. Server-side streaming generates HTML incrementally for faster initial page loads, with progressive hydration binding interactivity once the page reaches the browser.

## Tags

### User Interface & Experience

- [Component-Based UI Libraries](https://awesome-repositories.com/f/user-interface-experience/component-libraries/component-based-ui-libraries.md) — A library for building user interfaces from small reusable components whose output updates automatically when their state changes.
- [Design Component Systems](https://awesome-repositories.com/f/user-interface-experience/design-component-systems.md) — Crafting self-contained, reusable pieces that combine into complex applications with clear unidirectional data flow.
- [Declarative Rendering Frameworks](https://awesome-repositories.com/f/user-interface-experience/dom-manipulation-libraries/declarative-rendering-frameworks.md) — Building web interfaces that automatically update when data changes, without manually manipulating the browser DOM.
- [Self-Contained Component Compositions](https://awesome-repositories.com/f/user-interface-experience/node-based-ui-components/self-contained-component-compositions.md) — Build components that manage their own state, then combine them into larger interfaces with data flowing clearly downward. ([source](https://github.com/react/react#readme))
- [Renderer Reconciler Abstractions](https://awesome-repositories.com/f/user-interface-experience/renderer-reconciler-abstractions.md) — Core rendering logic is separated from platform-specific output, allowing the same component model to target web, native, or server runtimes.
- [Cross-Platform Development](https://awesome-repositories.com/f/user-interface-experience/cross-platform-development.md) — Building mobile apps that run on iOS and Android from one codebase, with shared business logic and platform-tailored UI where needed.
- [Cross-Platform UI Frameworks](https://awesome-repositories.com/f/user-interface-experience/cross-platform-ui-frameworks.md) — Run the same interface code on web servers with Node or on mobile devices without rewriting the core logic or views. ([source](https://github.com/react/react#readme))

### Mobile Development

- [Data-View Synchronizers](https://awesome-repositories.com/f/mobile-development/distribution-updates/over-the-air-updates/data-view-synchronizers.md) — Skip re-rendering parts of a view whose underlying data has not changed, and keep local state predictable and stable. ([source](https://github.com/react/react#readme))
- [React Native Components](https://awesome-repositories.com/f/mobile-development/react-native-ecosystem/react-native-components.md) — Creating truly native mobile apps using the same component model and tooling as web applications.

### Software Engineering & Architecture

- [Render-Time State Hooks](https://awesome-repositories.com/f/software-engineering-architecture/architectural-design-patterns/state-management/reactive-subscription-systems/component-state-bindings/render-time-state-hooks.md) — A call-order mechanism that attaches reusable state and side-effect logic to functional components at render time.
- [UI Runtimes](https://awesome-repositories.com/f/software-engineering-architecture/cross-platform-runtimes/ui-runtimes.md) — A runtime that renders interfaces with JavaScript on the server or targets native mobile platforms without rewriting component code.
- [Reconciler Output Targets](https://awesome-repositories.com/f/software-engineering-architecture/headless-logic-decoupling/logic-rendering-decouplers/reconciler-output-targets.md) — Core rendering logic decoupled from output target, allowing web, native, or server implementations.

### Web Development

- [Concurrent Rendering Engines](https://awesome-repositories.com/f/web-development/browser-integration-utilities/browser-engines/web-rendering-engines/concurrent-rendering-engines.md) — Incremental work prioritisation lets rendering pause, resume, and abort without blocking the main thread.
- [Component Composition](https://awesome-repositories.com/f/web-development/component-composition.md) — Encapsulated units with internal state nest into larger views through a unidirectional data flow from parent to child.
- [Component State Managers](https://awesome-repositories.com/f/web-development/component-state-managers.md) — A library for encapsulating state inside self-contained components and passing data through predictable flows.
- [Virtual DOM Reconciliation](https://awesome-repositories.com/f/web-development/virtual-dom-reconciliation/virtual-dom-reconciliation.md) — A diffing algorithm that compares staged UI trees to compute the smallest set of changes needed to update the rendered output.
- [Server-Side Rendering](https://awesome-repositories.com/f/web-development/rendering-templating/server-side-rendering.md) — Generating web pages on the server with Node to improve initial load performance and search engine visibility.
- [Call-Order State Hooks](https://awesome-repositories.com/f/web-development/state-management-hooks/call-order-state-hooks.md) — Attaching reusable state and side-effect logic to functional components through a paired call-order mechanism.
- [Streaming Server-Side Rendering](https://awesome-repositories.com/f/web-development/streaming-server-side-rendering.md) — HTML is generated and incrementally flushed from the server to the browser, where progressive hydration binds interactivity.

### Graphics & Multimedia

- [Server-Side Rendering Engines](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/rendering/systems/server-side-rendering-architectures/server-side-rendering-engines.md) — A Node.js engine that generates HTML on the server from components for faster initial page loads and SEO.

### Part of an Awesome List

- [Web Frameworks](https://awesome-repositories.com/f/awesome-lists/devtools/web-frameworks.md) — Library for building web and native user interfaces.
