Use case
Framework
Owner
Add Multipart Enctype To Forms With File Input
This codemod automatically adds the enctype="multipart/form-data" attribute to forms containing file input fields. It ensures that forms with file inputs properly handle file uploads during non-JS submissions, which is a requirement for SvelteKit v2.
Deno Remove Node:Process Import
This codemod removes redundant import process from 'node:process'; statements, as process is now globally available in Deno v2
Deno Refactor TLS Certs Reading
This codemod updates the usage of TLS certificate loading in Deno by replacing deprecated properties with their new counterparts. In Deno V2, loading certificates directly from files is now deprecated. Instead, you should read the certificates yourself.
Deno Refactor Resource Ids
In Deno v2, resource IDs are being deprecated. Most users do not directly interact with resource IDs, so we are moving towards a model where resources are referenced by native JavaScript objects. This codemod automates the process of updating your code to align with this change.
Deno Import Stl Functions
This codemod updates removed Deno function calls in Deno v2 to their new equivalents from the standard library It also automatically adds the necessary import statements from the appropriate modules.
Remix Js/V2/Migration Recipe
This recipe is a set of codemods that will help migrate to Remix.js v2.
Remix Js/V2/Webpack V2 Migrate Dev Server Port
In your remix.config.js, rename devServerPort to future.v2_dev.port.
Remix Js/V2/Typescript 2 Update Links Function And Property Names
Route links properties should all be the React camelCase values instead of HTML lowercase values.
Remix Js/V2/Rename Browser Build Directory
In your remix.config.js, rename browserBuildDirectory to assetsBuildDirectory.
Before
Remix Js/V2/Remix Run 1 Use Transition To Use Navigation
This hook is now called useNavigation to avoid confusion with the recent React hook by the same name. It also no longer has the type field and flattens the submission object into the navigation object itself.
Remix Js/V2/Remix 1 Use Route Error Codemod
In v1, a thrown Response rendered the closest CatchBoundary while all other unhandled exceptions rendered the ErrorBoundary. In v2 there is no CatchBoundary and all unhandled exceptions will render the ErrorBoundary, response or otherwise.
Remix Js/V2/Remix 1 Replace Response With Create Readable Stream
ne place this is likely to surface and require a change is your app/entry.server.tsx file, where you'll also need to convert the Node PassThrough into a web ReadableStream via createReadableStreamFromReadable
Remix Js/V2/Remix 1 Add Meta V1 Wrapper
Using the metaV1 function, you can pass in the meta function's arguments and the same object it currently returns. This function will use the same merging logic to merge the leaf route's meta with its direct parent route meta before converting it to an array of meta descriptors usable in v2.
Remix Js/V2/Nodejs Module Exports Server Build Directory To Path
In your remix.config.js, rename serverBuildDirectory to serverBuildPath and specify a module path, not a directory.
Remix Js/V2/Fetcher Submission Properties Flattening
Like useNavigation, useFetcher has flattened the submission and removed the type field.
Remix Js/V2/Add Matches Param And Array Return To Meta Export
Instead of returning an object from meta, you will now return an array of descriptors and manage the merge yourself. This brings the meta API closer to links, and it allows for more flexibility and control over how meta tags are rendered.
Valtio/V2/Migration Recipe
This recipe provides a collection of codemods to help you migrate your codebase to Valtio v2. These codemods are designed to streamline the transition process by automating common code transformations due to behavioral changes in Valtio v2.
Valtio/V2/Use Snapshot Migration
This codemod automates the migration of Valtio code to accommodate changes in the behavior of
useSnapshot()
. In recent updates,useSnapshot()
has been modified for better compatibility withuseMemo
and the upcoming React compiler. This codemod updates your code to ensure optimal performance and compatibility with these changes.Valtio/V2/Deep Clone Proxy Objects
In Valtio v2, the behavior of the
proxy(obj)
function has changed. In v1,proxy(obj)
was a pure function that deeply copied the objectobj
. In v2,proxy(obj)
is an impure function that deeply modifiesobj
. This codemod updates your code to accommodate these changes by incorporatingdeepClone
to ensure that objects are deeply copied as they were in v1.Msw/2/Upgrade Recipe
This recipe is a set of codemods that will upgrade your project from using msw v1 to v2.
Codemod verified
Regularly tested and maintained by our engineers and codemod expert community