Use case
Framework
Owner
React Router/4/Move Hoc To Global Scope
Moves HOC calls to the global scope
Codemod verified
Regularly tested and maintained by our engineers and codemod expert community
by@codemod
Remix/2/React Router/Upgrade
This codemod automates most of the manual steps outlined in the Remix to React Router upgrade guide.
React Router/6/UseHistory To UseNavigate
This codemod migrates
useHistory
touseNavigate
in React Router codebases. It replacesuseHistory
imports and updates all instances ofhistory.push
,history.replace
,go
,goBack
, andgoForward
to align with theuseNavigate
API.React Router/6/Switch To Routes
This codemod updates
Switch
components toRoutes
in React Router, in line with React Router v6 and newer. It also adjusts the imports, replacingSwitch
withRoutes
inreact-router-dom
import statements.React Router/6/Migrate StaticRouter Import
This codemod updates imports of
StaticRouter
to use thereact-router-dom/server
package instead ofreact-router-dom
, in line with updated React Router requirements.React Router/6/Seperate Link State Prop
This codemod simplifies the
Link
component by transforming itsto
prop from an object with apathname
to a string. It removes the unnecessary object wrapper around thepathname
, maintaining thestate
prop as is.React Router/6/Replace UseRouteMatchWithUseMatch
This codemod updates
useRouteMatch
calls to the neweruseMatch
function inreact-router-dom
. It also adjusts any arguments passed touseRouteMatch
, changingstrict
toend
andsensitive
tocaseSensitive
. Additionally, it ensures that imports are updated to reflect the removal ofuseRouteMatch
.React Router/6/Update Relative Links
This codemod modernizes
Route
andLink
components in React Router by:- Removing the deprecated
exact
prop fromRoute
. - Updating
Route
to use theelement
prop. - Rewriting dynamic
Link
andRoute
paths that use template literals like${match.url}
and${match.path}
.
- Removing the deprecated
React Router/6/Navlink Exact To End
This codemod replaces the deprecated
exact
prop inNavLink
with the modernend
prop. React Router v6 and beyond useend
to indicate that the path should match exactly, making this a necessary update for compatibility with newer versions.React Router/7/Migration Recipe
This codemods designed to facilitate the migration of your project from React Router to version 7. Each codemod targets specific changes and improvements introduced in React Router v7, ensuring a smoother transition.
React Router/7/Add V7 RelativeSplatPath Flag
This transformation adds the necessary configuration to enable v7 features, specifically the v7_relativeSplatPath flag. It affects both components and createBrowserRouter configurations.