Skip to content

airbnb/ts-migrate

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
August 14, 2020 17:27
August 14, 2020 17:27
August 14, 2020 17:27
August 14, 2020 17:27
August 14, 2020 17:27
August 14, 2020 17:27
August 18, 2020 12:16
November 7, 2022 19:38

ts-migrate

ts-migrate is a tool for helping migrate code to TypeScript. It takes a JavaScript, or a partial TypeScript, project in and gives a compiling TypeScript project out.

ts-migrate is intended to accelerate the TypeScript migration process. The resulting code will pass the build, but a followup is required to improve type safety. There will be lots of // @ts-expect-error, and any that will need to be fixed over time. In general, it is a lot nicer than starting from scratch.

ts-migrate is designed as a set of plugins so that it can be pretty customizable for different use-cases. Potentially, more plugins can be added for addressing things like improvements of type quality or libraries-related things (like prop-types in React).

Plugins are combined into migration configs. We currently have two main migration configs:

  • for the main JavaScript → TypeScript migration
  • for the reignore script

These configs can be moved out of the default script, and people can add custom configs with a different set of plugins for their needs.

You can find instructions on how to install and run ts-migrate in the main package. If you find any issues or have ideas for improvements, we welcome your contributions!

Check out the blog post about ts-migrate!

Published Packages

Folder Version Package
packages/ts-migrate npm version ts-migrate
packages/ts-migrate-plugins npm version ts-migrate-plugins
packages/ts-migrate-server npm version ts-migrate-server

Unpublished Packages

Folder Description
packages/ts-migrate-example basic example of usage of the ts-migrate-server with a writing a custom simple plugin

Authors


Brie Bunge

Sergii Rudenko

John Haytko

Elliot Sachs

Joe Lencioni

License

MIT, see LICENSE for details.