Software and platforms
React
Summary
React is a free, open-source JavaScript library for building user interfaces out of reusable pieces called components. Facebook engineers created it, and it was open-sourced on May 29, 2013. It popularized JSX and the virtual DOM, added Hooks in 2019 and server components in React 19 (2024), and moved from Meta to the independent React Foundation in February 2026. As of October 22, 2026, W3Techs finds it on 6.0% of all websites.
What React is
React is a free, open-source JavaScript library for building user interfaces, the parts of a website or app that people see and click. Its own site describes it as a library for web and native user interfaces.1
A library is a collection of ready-made code that a developer calls from their own program. React is not a full framework: it handles what appears on screen, and its documentation recommends pairing it with a framework such as Next.js or React Router for routing and data loading.12
The central idea is the component. A React component is a JavaScript function that returns a description of a piece of interface, such as a button, a menu or a whole page, and components can be nested inside each other to build entire screens.13 The documentation puts the contrast this way: web pages used to be markup with some JavaScript sprinkled on, while a React component is “a JavaScript function that you can sprinkle with markup.”3
React is widely used, though far less common across the whole web than older tools. As of October 22, 2026, W3Techs finds React on 6.0% of all websites and on 8.0% of the sites whose JavaScript library it can identify.4 In the same survey jQuery, an older library, appears on 64.5% of all websites.5 W3Techs lists Roblox.com, QQ.com and Alibaba.com among sites using React, along with inner pages of Apple.com and the BBC.4
Developer numbers are much higher than website numbers, because React is used to build apps and internal tools as well as public sites. The react package was downloaded 116,163,376 times from the npm registry in the week of October 12 to 18, 2026.6 Downloads count automated builds as well as people, so they measure activity rather than users. As of October 22, 2026, the main repository on GitHub, now at react/react, shows about 251,700 stars and the MIT license.7
Origins at Facebook and the 2013 release
React grew out of tools for Facebook’s ads products. A history published on the React blog in 2016 describes an internal framework called BoltJS, then a side project by Facebook engineer Jordan Walke called FaxJS, where most of React’s basic ideas, such as props, state and comparing versions of the interface, first appeared.8 In March 2012 Walke brought the library into Facebook’s codebase as FBolt, and he and Tom Occhino later renamed it React.8
Instagram helped push it into the open. After Facebook acquired Instagram, engineer Pete Hunt joined its new web team and wanted to build the site entirely with React, which meant separating React from Facebook’s own infrastructure.8
React was open-sourced on May 29, 2013, with a first public commit labeled “Initial public release” and version 0.3.0 released the same day.9 React’s own version history says it was open-sourced at Facebook Seattle in 2013, and links a video of a talk given there.9
The first post on the project’s blog, “Why did we build React?” by Pete Hunt, appeared on June 5, 2013. It described React as a library, not a full model-view-controller framework, and argued that building interfaces in a real programming language worked better than templates.10
The same approach was later carried to phones. On March 26, 2015, Facebook released React Native, which uses React to build mobile apps that display the phone’s own native controls instead of web pages. It launched for iOS, with Android announced as coming later.11
JSX and the virtual DOM
Two ideas set early React apart: a way of writing markup inside code, and a way of updating the page efficiently.
JSX
JSX is a syntax extension for JavaScript that lets developers write HTML-like markup inside a JavaScript file.12 A component might return <img src=”photo.jpg” alt=”A photo” /> directly in its code. JSX is stricter than HTML: every tag must be closed, a component must return a single outer element, and most attributes use camelCase, so the HTML class attribute becomes className.12
The React documentation stresses that JSX and React are separate things that are often used together.12 Browsers do not understand JSX on their own. A compiler such as Babel or TypeScript turns it into ordinary JavaScript function calls before the code reaches the browser.13
The idea had roots at Facebook. The company had used XHP, an extension of PHP for writing XML-style markup in code, since about 2010, and React’s JSX was forked from an earlier project called js-xml-literal.8
The virtual DOM
The DOM (Document Object Model) is the browser’s live, in-memory version of a page, which scripts change to update what the visitor sees.
React’s legacy documentation defines the virtual DOM as “a programming concept where an ideal, or ‘virtual’, representation of a UI is kept in memory” and kept in sync with the real DOM.14 When data changes, React runs the component again, compares the new description with the previous one and applies only the differences to the page. React calls this comparison reconciliation.1014
The 2013 blog post did not use the term virtual DOM. It described each render as a lightweight description of what the page should look like, and gave about 1 millisecond as the re-render time for the TodoMVC demo app.10 In React 16, a new reconciliation engine called Fiber replaced the original, with the main goal of allowing rendering work to be split into pieces.1415
The 2017 license dispute
React’s license changed twice. It was released under the Apache 2 license, and with version 0.12 on October 28, 2014, Facebook moved it to the three-clause BSD license with an explicit patent grant.16 That combination became known as “BSD + Patents.” Under it, a company that sued Facebook for patent infringement lost the patent license Facebook had granted.17
In 2017 the Apache Software Foundation placed the Facebook BSD+Patents license in its Category X, the list of licenses that may not be included in Apache products. Its policy page says the license shifts risk onto people downstream who use Apache software.1817 On August 18, 2017, Facebook’s Adam Wolff wrote that the company would not change React’s license, calling the Apache decision an internal policy choice rather than a legal ruling.17
Some large users then moved away. On September 14, 2017, Matt Mullenweg wrote that the team building Gutenberg, the new editor for WordPress, would rewrite it with a different library, because core WordPress updates reach more than a quarter of all websites and he was not comfortable passing the patent clause on to users.19
Eight days later Facebook reversed course. On September 22, 2017, Wolff announced that React, Jest, Flow and Immutable.js would move to the MIT license, saying Facebook had “failed to decisively convince this community” of the patent license’s value.20 React 16.0 shipped under the MIT license on September 26, 2017, and React 15.6.2 was also published under MIT for teams that could not upgrade yet.15 Mullenweg added an update to his post noting the reversal, and the WordPress block editor is a React single-page application today.1921 React’s license file still names Meta Platforms, Inc. and affiliates as the copyright holder.22
Hooks and the move to function components
For its first years, React components that needed to remember anything, such as whether a menu is open, were usually written as JavaScript classes. React 16.8, released on February 6, 2019, added Hooks, which “let you use state and other React features without writing a class.”23
The 16.8 release included Hooks such as useState, useEffect, useReducer, useMemo and useCallback.23 Developers can also write their own Hooks to share behavior between components.23
Classes were not removed. The release post said the team had no plans to remove classes from React, and recommended adopting Hooks gradually.23 The shift still changed how React is taught: when the new documentation site launched at react.dev on March 16, 2023, it taught React with function components and Hooks from the start, and moved the old documentation to legacy.reactjs.org.24
React 18, React 19 and server components
Recent versions of React have moved work from the visitor’s browser back toward the server.
React 18
React 18.0 came out on March 29, 2022. Its main change was concurrent rendering, which lets React prepare more than one version of the interface at once and pause or abandon a render if something more urgent, such as a key press, comes in.25 It also grouped more state updates into a single re-render, added transitions for marking updates as non-urgent, and supported streaming server rendering with Suspense, so the server can send parts of a page as they become ready.25
Server components
The React team introduced Server Components as research on December 21, 2020, stating that they were still being researched and developed.26 The React reference now describes them as “a new type of Component that renders ahead of time, before bundling, in an environment separate from your client app or SSR server.”27
A server component can run once when the site is built, or on a web server for each request, and can read files or a database directly. Libraries it uses for that work are not sent to the visitor’s browser.27
React 19
React 19 was released as stable on December 5, 2024.28 It included the Server Components features previously tested in React’s Canary channel, Server Actions (functions marked with the “use server” directive, which React has called Server Functions since September 2024), and Actions, a way of handling form submissions with built-in pending and error states.2829 It also let components render <title> and <meta> tags that React moves into the page’s head, which matters for search results and link previews.28
Later 19.x releases added more. React 19.2, on October 1, 2025, added an Activity component for keeping hidden parts of an app ready, and partial pre-rendering, which serves a static shell of a page first and fills in dynamic parts later.30 React 19.3, on September 9, 2026, made the ViewTransition component stable for animating changes between views.31 As of October 22, 2026, the newest release is 19.3.1, published on October 14, 2026 alongside patch releases for the 19.2, 19.1 and 19.0 lines.32
The React Compiler reached version 1.0 on October 7, 2025. It is a build-time tool that optimizes components automatically. The team said it had shipped in Meta apps such as the Meta Quest Store and reported initial loads and page navigations up to 12% faster.33
How new React projects start
On February 14, 2025, the React team deprecated Create React App, the long-standing starter tool, because it had no active maintainers.34 The documentation now recommends starting with a framework: Next.js, React Router or, for mobile apps, Expo.2 It notes that these frameworks can still produce static sites that need no server.2
Server component security
Running React on the server brought server-side security risks. On December 3, 2025, the React team disclosed CVE-2025-55182, rated 10.0 out of 10, a flaw that let an attacker run code on a server using React Server Components by sending a crafted request. It affected React 19.0 to 19.2.0 server packages and frameworks built on them, including Next.js, and was fixed in 19.0.1, 19.1.2 and 19.2.1.35 Follow-up denial-of-service and source code exposure flaws were fixed in December 2025 and January 2026.36 Apps whose React code does not run on a server were not affected.3536
From Meta to the React Foundation
Meta, Facebook’s parent company, looked after React for more than a decade.37 On October 7, 2025, at React Conf in Henderson, Nevada, the Linux Foundation announced its intent to form a React Foundation as a neutral home for React, React Native and other supporting projects.38 Meta committed to a five-year partnership and more than $3 million in funding, plus engineering support.37
The two announcements cite slightly different usage figures, both from the tracking service BuiltWith: Meta said React powers “over 50 million websites,” while the Linux Foundation said nearly 55 million.3738
The React Foundation officially launched on February 24, 2026. Its founding Platinum members are Amazon, Callstack, Expo, Huawei, Meta, Microsoft, Software Mansion and Vercel, and its executive director is Seth Webster.39 The announcement said React, React Native and JSX are no longer owned by Meta, that the board would be separate from technical decisions, and that repositories and websites would be transferred in the following months.39 As of October 22, 2026, the old github.com/facebook/react address leads to the react/react repository.7
Timeline
- React 19.3.1 and patch releases for the 19.2, 19.1 and 19.0 lines32
- React 19.3 makes the ViewTransition component stable31
- The React Foundation launches under the Linux Foundation39
- React discloses and fixes CVE-2025-55182 in React Server Components35
- Meta and the Linux Foundation announce the React Foundation; React Compiler 1.0 ships38
- Create React App is deprecated in favor of frameworks34
- React 19 is released with Server Components and Actions28
- The react.dev documentation site launches24
- React 18 introduces concurrent rendering25
- The React team introduces Server Components as research26
- React 16.8 adds Hooks23
- React 16.0 ships with the Fiber engine under the MIT license15
- Facebook announces React will move to the MIT license20
- Facebook releases React Native for iOS11
- React is open-sourced with version 0.3.09
What it means for your website
You do not need to know React to run a small business website. It matters when a developer, an agency or an AI tool builds your site with it, or when you edit pages in a tool that runs on it.
- You may already use React without writing it. WordPress’s own handbook describes the block editor as a React single-page application.21 We build on WordPress every week, and custom blocks are a developer task for this reason; our WordPress review covers the rest.
- AI builders often produce React code. Lovable says apps created before May 13, 2026 use React with Vite and render in the browser, while newer apps use TanStack Start, which renders pages on the server.40 See our Lovable review and our guide to builders, WordPress or an agency.
- Ask how pages are rendered. If a React site builds its pages only in the browser, search engines must run its JavaScript before they can read the content. Google says pages may wait in its rendering queue and that “not all bots can run JavaScript,” and calls server-side rendering or pre-rendering a good idea for users and crawlers.41 The React team says server rendering also sends less JavaScript and shows content sooner.34 A static site built ahead of time avoids the problem.
- Check titles and descriptions. React 19 can place <title> and <meta> tags in the page head from any component.28 Make sure each page has its own. Our page on websites and SEO explains why.
- Keep it patched if it runs on a server. A site using React Server Components through a framework such as Next.js needs framework updates like any server software. The critical December 2025 flaw was fixed in React 19.0.1, 19.1.2 and 19.2.1, with further fixes in 19.0.4, 19.1.5 and 19.2.4.3536
See also
References
- React. react.dev, The React Team. accessed October 22, 2026.
- Creating a React App. React documentation, react.dev. accessed October 22, 2026.
- Your First Component. React documentation, react.dev. accessed October 22, 2026.
- Usage statistics and market share of React. W3Techs. 2026-10-22. accessed October 22, 2026.
- Usage statistics of JavaScript libraries for websites. W3Techs. 2026-10-22. accessed October 22, 2026.
- Download count for the react package, October 12 to 18, 2026. npm, Inc., api.npmjs.org. 2026-10-18. accessed October 22, 2026.
- react/react repository. GitHub. accessed October 22, 2026.
- Our First 50,000 Stars. Vjeux, React Blog. 2016-09-28. accessed October 22, 2026.
- React Versions. React documentation, react.dev. accessed October 22, 2026.
- Why did we build React?. Pete Hunt, React Blog. 2013-06-05. accessed October 22, 2026.
- React Native: Bringing modern web techniques to mobile. Tom Occhino, Engineering at Meta. 2015-03-26. accessed October 22, 2026.
- Writing Markup with JSX. React documentation, react.dev. accessed October 22, 2026.
- Introducing the New JSX Transform. Luna Ruan, React Blog. 2020-09-22. accessed October 22, 2026.
- Virtual DOM and Internals. React documentation (legacy), reactjs.org. accessed October 22, 2026.
- React v16.0. Andrew Clark, React Blog. 2017-09-26. accessed October 22, 2026.
- React v0.12. React Blog. 2014-10-28. accessed October 22, 2026.
- Explaining React's License. Adam Wolff, Engineering at Meta. 2017-08-18. accessed October 22, 2026.
- ASF 3rd Party License Policy. The Apache Software Foundation. accessed October 22, 2026.
- On React and WordPress. Matt Mullenweg, ma.tt. 2017-09-14. accessed October 22, 2026.
- Relicensing React, Jest, Flow, and Immutable.js. Adam Wolff, Engineering at Meta. 2017-09-22. accessed October 22, 2026.
- The block in the Editor. Block Editor Handbook, WordPress.org. 2026-10-14. accessed October 22, 2026.
- LICENSE. react/react repository, GitHub. accessed October 22, 2026.
- React v16.8: The One With Hooks. Dan Abramov, React Blog. 2019-02-06. accessed October 22, 2026.
- Introducing react.dev. Dan Abramov and Rachel Nabors, React Blog. 2023-03-16. accessed October 22, 2026.
- React v18.0. The React Team, React Blog. 2022-03-29. accessed October 22, 2026.
- Introducing Zero-Bundle-Size React Server Components. Dan Abramov, Lauren Tan, Joseph Savona and Sebastian Markbåge, React Blog. 2020-12-21. accessed October 22, 2026.
- Server Components. React reference, react.dev. accessed October 22, 2026.
- React v19. The React Team, React Blog. 2024-12-05. accessed October 22, 2026.
- Server Functions. React reference, react.dev. accessed October 22, 2026.
- React 19.2. The React Team, React Blog. 2025-10-01. accessed October 22, 2026.
- React 19.3. The React Team, React Blog. 2026-09-09. accessed October 22, 2026.
- Releases. react/react repository, GitHub. 2026-10-14. accessed October 22, 2026.
- React Compiler v1.0. React Blog, react.dev. 2025-10-07. accessed October 22, 2026.
- Sunsetting Create React App. Matt Carroll and Ricky Hanlon, React Blog. 2025-02-14. accessed October 22, 2026.
- Critical Security Vulnerability in React Server Components. The React Team, React Blog. 2025-12-03. accessed October 22, 2026.
- Denial of Service and Source Code Exposure in React Server Components. The React Team, React Blog. 2025-12-11. accessed October 22, 2026.
- Introducing the React Foundation: The New Home for React and React Native. Chris Wiltz, Engineering at Meta. 2025-10-07. accessed October 22, 2026.
- Linux Foundation Announces Intent to Launch the React Foundation. The Linux Foundation. 2025-10-07. accessed October 22, 2026.
- The React Foundation: A New Home for React Hosted by the Linux Foundation. Matt Carroll, React Blog. 2026-02-24. accessed October 22, 2026.
- FAQ. Lovable documentation. accessed October 22, 2026.
- Understand the JavaScript SEO basics. Google Search Central. 2026-03-04. accessed October 22, 2026.
Web Building Encyclopedia. First published October 22, 2026. Last reviewed October 22, 2026. Every fact on this page is linked to a source we opened. Spotted an error? Write to [email protected].