React Versions
React 19
Links:
WDS: NEW React 19 Changes Are Amazing
Source: https://www.youtube.com/watch?v=v07gXY6ESEo
- React compiler is going to automatically apply
useMemo,useCallback, andmemo - it's going to find more instances when you should be using them than you normally would
- Actions allow you to pass a function to DOM elements such as a form
- instead of an
onSubmit, you use an action
- instead of an
useOptimisticallows you to do optimistic updates (you click a like button and it shows that it is updated even though you haven't sent the request to the server yet)- adding
"use client"and"use server". - Document Metadata can be added anywhere in the component and it'll be added to the head of the document
- you won't need
forwardRefanymore - you can use the
usehook which can replacelazy
React 18
- Introduced concurrent rendering features (automatic batching by default)
- New root API:
ReactDOM.createRoot()for improved performance and concurrency - SSR streaming support with Suspense on the server
- Added new hook:
useIdfor generating stable unique IDs - Improved strict mode behavior and hydration mismatch handling
React 17
- No new developer-facing features; focused on a gradual upgrade path
- New JSX transform: no need to import React in every file
- Updated event delegation: listeners attach to the root instead of the document
- Improved support for future async rendering migrations
React 16
- Complete rewrite of core architecture (Fiber) for better reconciliation
- Introduced error boundaries via
componentDidCatch - Added portals using
ReactDOM.createPortalto render outside parent DOM hierarchy - Fragment syntax support:
<>...</> - New Context API with
React.createContext - Hooks introduced in React 16.8:
useState,useEffect,useContext, etc.
React 15
- Legacy lifecycle methods (
componentWillMount,componentWillReceiveProps, etc.) - Stateless functional components without hooks
- React Addons separated into standalone packages (e.g., react-addons-css-transition-group)
- Performance tool
react-addons-perffor profiling - Official support dropped for IE8
Versioning note: 0.14 to 15
After React 0.14, the next major release was React 15; there were no versions 1.x through 14.x.
React 0.14
- React and ReactDOM split into separate packages (
reactvsreact-dom) - Stateless functional components became a first‑class citizen
- Enabled custom renderers (React Native, etc.) via new Reconciler API
- Removed two‑way data binding and mixin support for ES6 classes
React 0.13
- Introduced ES6 class component support alongside
React.createClass - Stateless functional components simplified component definitions
- Performance improvements in reconciliation algorithm
- TransitionGroup and LinkedStateMixin provided as addons