Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

iTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more

React’s history is not a sequence in which every major version delivers a sweeping new programming model. Its own versioning policy reserves major releases for breaking changes, while new features often arrive in minor releases. The clearest turning points are React 16’s steady expansion of component capabilities, React 17’s role as a transition point, React 18’s concurrent rendering features, and React 19’s newer APIs and upgrade requirements.

How to read React’s version history

React’s versioning policy says breaking changes are reserved for major versions, but features can—and often do—arrive in minor releases. That means a list of major releases alone misses much of what changed. The React versions archive is a better guide to the milestones within each release line.

The dates and features below distinguish major releases from later additions. For example, Hooks are associated with the React 16 era, but they arrived in React 16.8, not in React 16.0.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

React 15: the prelude

React 15 was released in April 2016, according to the project’s version policy. It provides a useful starting point for the eras covered here; the milestones discussed below begin with React 16.

React 16: a long era of capability-building

React 16.0 arrived in September 2017. Rather than being defined by one feature, the 16.x line accumulated changes that broadened how developers structure, reuse, and handle components.

  • Fragments let components return groups of elements without adding an unnecessary wrapper element.
  • Error handling introduced error boundaries for handling rendering errors in parts of an interface.
  • lazy and memo added tools for loading components on demand and memoizing component rendering.
  • contextType provided a class-component way to read context.
  • Hooks arrived in React 16.8, providing a way to use state and other React capabilities in function components. React 16.7 did not include Hooks; the archive explicitly distinguishes that release from 16.8.

Other 16.x archive milestones include pointer events. Taken together, these releases show why the React 16 era is best understood as incremental development across minor versions, rather than as a single launch-day transformation.

React 17: a transition point

React 17.0 was released in October 2020. Its release-candidate announcement was titled “No New Features,” making this a different kind of major release from React 16 or 18. That description should not be mistaken for a claim that nothing relevant changed around React 17: the versions archive separately records the new JSX transform.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

React 17 is useful to understand as an adoption and transition point. The major release did not need to headline a large set of new user-facing capabilities to mark progress in React’s tooling and evolution.

React 18: concurrent capabilities with gradual adoption

Released on March 29, 2022, React 18 added automatic batching, startTransition, a new concurrent renderer, and streaming server rendering with Suspense. These changes expanded how React can schedule rendering and deliver server-rendered content.

The React Team described the adoption model this way: “Concurrent React is opt-in — it’s only enabled when you use a concurrent feature — but we think it will have a big impact on the way people build applications.” That distinction matters: upgrading an application did not automatically turn on every concurrent behavior.

To use React 18’s new features, applications need the new root APIs, createRoot and hydrateRoot. The team presented adoption as something developers could take up gradually, rather than requiring every application to change its behavior all at once.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

React 19 and the current release line

React 19 became stable on December 5, 2024. Its release post describes Actions and other new features. The upgrade guide recommends moving first to React 18.3, which includes warnings intended to help surface issues before upgrading to 19. React 19 also requires the modern JSX transform.

As of October 7, 2026, the official versions page lists React 19.3 as the latest release. Announced on September 9, 2026, React 19.3 adds View Transitions and Fragment Refs. Release status can change, so consult the versions page for the current latest version.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

The React eras at a glance

Era Release milestone What distinguishes it
React 15 April 2016 Historical starting point for this timeline.
React 16 React 16.0: September 2017 Incremental feature-building across 16.x, including Hooks in 16.8.
React 17 October 2020 A transition point; the archive also records the new JSX transform.
React 18 March 29, 2022 Concurrent capabilities, automatic batching, and streaming server rendering with Suspense, with gradual adoption.
React 19 Stable: December 5, 2024 Actions and other features; requires the modern JSX transform.
React 19.3 Announced September 9, 2026 Latest version listed on the official versions page as of October 7, 2026; includes View Transitions and Fragment Refs.

React’s teaching path changed, not its class support

React launched its redesigned documentation at react.dev on March 16, 2023. The new documentation teaches modern React with Hooks from the beginning, making function components the default path for learning React today. The older documentation remains archived, and class components remain supported. The shift is in how React is taught—not the removal of existing class components.

Primary sources

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.