React Router v7 is the safe default for React routing and, since the Remix merge, a credible full framework too. Library mode stays the most tested router in the ecosystem, and framework mode gives Remix's loaders, actions, and SSR a maintained home. The catch is identity: the project now wears two hats, and the docs ask you to grasp three modes before you commit. With Remix v3 leaving React for a Preact fork, React Router is where the React-first crowd lands. Next.js still owns the full-stack default, but for teams that want routing without the rest of a platform, this is the pick.
- Most widely used router in the React ecosystem, 56K+ stars
- Three modes: declarative, data, and full framework
- Framework mode absorbs Remix loaders, actions, and SSR
- Vite-native, deploys to any Node or edge host
- Stable migration path for existing Remix v2 apps
- Three overlapping modes raise the learning curve
- Framework mode is younger than Next.js as a full-stack base
- Brand confusion after the Remix merge and Remix v3 split
- Less batteries-included than Next.js for images and caching
React Router is the de facto routing layer for React, and since version 7 it is also a full-stack framework. In late 2024 the Remix team folded Remix’s bundler, server runtime, and data conventions into React Router, so a single library now spans a simple route map and a Next.js-style application framework.
Where it fits
React Router started in 2014 as a declarative routing library for React single-page apps, and that remains its most common use: map URLs to components, handle nested layouts, read params. Version 7 layers two more modes on top. Data mode adds route loaders and actions for fetching and mutation without a server. Framework mode adds the full Remix stack: server rendering, code splitting, form actions, and optimistic UI, all wired through a Vite plugin.
The reason the modes exist is the Remix merge. Remix and React Router had grown functionally identical, so rather than ship two products the team announced that what was planned as Remix v3 would instead become React Router v7. Existing Remix v2 apps migrate to framework mode with a documented upgrade path, mostly import swaps. Teams that only ever used React Router as a client router keep doing exactly that.
Cost to adopt
React Router is free and MIT-licensed, with no hosted service or paid tier. The cost is conceptual, not financial: deciding which of the three modes a project needs, and absorbing the brand shift after the merge. Because framework mode is built on Vite and standard Web APIs, the output runs on any Node server or edge runtime, so there is no lock-in to a specific host. The bigger context is Shopify’s split: Remix the brand has moved on to a separate v3 effort built on a fork of Preact rather than React, which means React Router is now the React-first continuation of that lineage and the place the data conventions are maintained.
How it compares
Next.js, the opinionated full-stack default with image optimization, caching, and React Server Components built in. Pick when you want a complete platform and accept its conventions.
Remix, now a separate v3 project moving off React onto a Preact fork. Pick if you want its web-standards philosophy and are willing to leave the React component ecosystem.
SvelteKit, the equivalent router-plus-framework for Svelte, lighter runtime and simpler mental model. Pick when you are not committed to React.
What changed recently
React Router shipped v7.17.0 on 2026-06-04, the latest in a steady release cadence on the v7 line that began with the December 2024 GA that merged Remix into the project. The headline arc remains the framework mode introduced in v7: Remix v2’s loaders, actions, and server rendering now live inside React Router rather than a separate package. The other half of the story landed in 2025, when Shopify’s “Wake up, Remix!” announcement (2025-05-26) set Remix v3 on a different course entirely, dropping React for a fork of Preact. React Router is the React-side outcome of that split, and the v7 point releases through mid-2026 have focused on stabilization ahead of a future v8.
Sources
- Merging Remix and React Router, remix.run, May 2024 (updated for v7 GA, Dec 2024)
- Wake up, Remix!, remix.run, 2025-05-26
- react-router on npm, v7.17.0, 2026-06-04
- remix-run/react-router releases, github.com, June 2026
- Remix Reimagined: V3 Will Drop React for a Fork of Preact, infoq.com, August 2025
- launch · 2026-06-30
React Router 8 moves to an annual release cycle and raises the baseline to Node 22 and ESM
React Router 8 is the first major release under the project's open governance model. It raises the baseline to Node 22, React 19.2.7, and Vite 7, goes ESM-only, drops the react-router-dom shim, and makes middleware always-on.
- beat · 2026-06-08
React Router 7 ships seven CVEs in a single window, one carries an RCE chain
The React Router team published seven security advisories on 2026-06-02 covering DoS, XSS, open-redirect, and one prototype-pollution RCE chain. Patches land in 7.13.2 through 7.15.1. Declarative Mode apps are largely unaffected; Framework Mode and RSC users carry the upgrade.