• 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 with useMemo 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 object obj. In v2, proxy(obj) is an impure function that deeply modifies obj. This codemod updates your code to accommodate these changes by incorporating deepClone 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.