---
title: "@vitejs/plugin-react Breaking Changes on npm | Since.dev"
description: "What each @vitejs/plugin-react release removed, renamed or changed: 11 breaking changes in 2 versions on npm, each with its source."
canonical_url: https://since.dev/packages/npm/@vitejs/plugin-react
last_updated: 2026-03-12
---

# @vitejs/plugin-react breaking changes

Every breaking API change we have recorded in @vitejs/plugin-react on npm: 11 breaking changes in 2 versions. Below are its newest 2 versions, removals and renames first, each with its source.

Newest change March 12, 2026

## 6.0.0

5 breaking changes, first published March 12, 2026.

- **Removed**  

Vite 7 and older versions are no longer supported. Upgrade to Vite 8 to keep using this plugin. [github.com](https://github.com/vitejs/vite-plugin-react/releases/tag/plugin-react%406.0.0)
- **Removed** `BabelOptions`  

BabelOptions was removed in @vitejs/plugin-react 6.0.0 [npmjs.com](https://www.npmjs.com/package/@vitejs/plugin-react/v/6.0.0)
- **Removed** `Options.babel`  

Babel is no longer a dependency of the plugin. To keep Babel transforms, install @rolldown/plugin-babel and pass your Babel options to it instead of to react(). [npmjs.com](https://www.npmjs.com/package/@vitejs/plugin-react/v/6.0.0)
- **Removed** `ReactBabelOptions`  

ReactBabelOptions was removed in @vitejs/plugin-react 6.0.0 [npmjs.com](https://www.npmjs.com/package/@vitejs/plugin-react/v/6.0.0)
- **Removed** `ViteReactPluginApi`  

ViteReactPluginApi was removed in @vitejs/plugin-react 6.0.0 [npmjs.com](https://www.npmjs.com/package/@vitejs/plugin-react/v/6.0.0)

## 5.0.0-beta.0

6 breaking changes, first published August 7, 2025.

- **Removed**  

The plugin no longer supports older Node.js versions; upgrade Node.js to 20.19 or later, or 22.12 or later. [github.com](https://github.com/vitejs/vite-plugin-react/releases/tag/plugin-react%405.0.0-beta.0)
- **Removed** `Options.disableOxcRecommendation`  

The disableOxcRecommendation option is removed, so code passing it must drop it. [npmjs.com](https://www.npmjs.com/package/@vitejs/plugin-react/v/5.0.0)
- **Removed** `runtimeModule`  

The runtimeModule option is no longer needed; use a newer babel-plugin-react-compiler that supports the target option. [github.com](https://github.com/vitejs/vite-plugin-react/releases/tag/plugin-react%405.0.0-beta.0)
- **Behavior changed**  

Builds with NODE_ENV=development now use the development JSX transform instead of the production one. [github.com](https://github.com/vitejs/vite-plugin-react/releases/tag/plugin-react%405.0.0-beta.0)
- **Behavior changed** `resolve.dedupe`  

The plugin no longer adds react and react-dom to resolve.dedupe; add them manually if you need the previous behavior. [github.com](https://github.com/vitejs/vite-plugin-react/releases/tag/plugin-react%405.0.0-beta.0)
- **Default changed** `exclude`  

The default exclude value changed so node_modules files are processed; set exclude explicitly to keep excluding them. [github.com](https://github.com/vitejs/vite-plugin-react/releases/tag/plugin-react%405.0.0-beta.0)

## Check your code

These are the changes. To see which of them reach your code, [scan a public repository](https://since.dev/scan.md), or have your coding agent call `check_code` with your manifest or lockfile over [MCP](https://since.dev/docs.md#mcp). [The API](https://since.dev/docs.md#api) reads every change in every version, not only the newest. On Team and up, a fix pull request opens for the changes that reach a connected repository. Nothing merges or deploys.

## Put your code on continuous management.

Scan a public repository now, or give your agent one line.

### See how out of date your code is.

[Scan a repository](https://since.dev/scan.md). Any public GitHub repository. No sign-in.

### Tell your agent what changed since it was trained.

`claude mcp add --transport http since https://api.since.dev/mcp`

---

Every page on this site as Markdown: https://since.dev/sitemap.md. For agents: https://since.dev/llms.txt.
