awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
airbnb avatar

airbnb/ts-migrate

0
View on GitHub↗
5,620 stars·232 forks·TypeScript·MIT·16 views

Ts Migrate

ts-migrate is an automated migration tool designed to transform JavaScript source code into compiling TypeScript files. It functions as a code migration framework that uses abstract syntax trees to perform large-scale refactoring and structural changes across a project.

The tool provides a customizable framework for defining plugin-based transformation rules, allowing for the automation of specific code changes. It includes specialized engines for converting JSDoc type definitions into native TypeScript annotations and a utility for suppressing compiler errors by inserting type assertions or ignore comments.

The system covers a broad range of migration capabilities, including the conversion of React property types and lifecycle methods, the normalization of class definitions, and the ability to target specific directories incrementally through pattern-based filtering.

Features

  • JavaScript to TypeScript Migration - Automates the conversion of existing JavaScript codebases into compiling TypeScript files.
  • AST-Based Source Transformations - Provides programmatic modification of source code by replacing matched syntax tree nodes while preserving original formatting.
  • Code Transformation Plugin Systems - Ships a system for transforming source code using tree-based logic or text replacements via plugins.
  • Code Migration Frameworks - Provides a customizable framework for defining plugin-based transformation rules to automate code changes during migration.
  • Language Migration Automation - Automates the conversion of entire codebases from JavaScript to TypeScript while preserving project structure.
  • TypeScript Source Transformers - Uses AST manipulation to programmatically transform JavaScript and partial TypeScript files into valid, compiling code.
  • AST-Based Refactorers - Programmatically modifies internal syntax trees to apply large-scale refactoring and renders them back to source code.
  • JSDoc to TypeScript Converters - Parses documentation comments and converts JSDoc type definitions into native TypeScript annotations.
  • Type Conversion - Extracts type information from JSDoc comments and converts them into native TypeScript annotations.
  • Automated Error Resolutions - Analyzes TypeScript compiler output to automatically insert type assertions or suppression comments.
  • Large-Scale Code Migrations - Performs systematic, project-wide automated rewrites to migrate legacy syntax to TypeScript standards.
  • Automated Suppression - Automatically inserts type-ignore comments and assertions to resolve remaining compiler errors and ensure the project compiles.
  • Migration Rule Plugins - Employs a modular system of custom rules to automate specific code conversions across a codebase.
  • TypeScript Annotation Conversion - Extracts type information from documentation comments and converts them into native TypeScript annotations.
  • Typed Error Management - Implements automated systems to clear remaining type errors through assertions and ignore comments.
  • TypeScript Compilation Fixes - Provides automated systems for identifying and resolving TypeScript type errors to ensure successful builds.
  • Customizable Transformation Rules - Allows defining specific transformation logic and configurations to fit different project requirements.
  • Glob Pattern Selectors - Uses wildcard glob patterns to select specific files for bulk migration operations.
  • Incremental - Facilitates the gradual conversion of large codebases by targeting specific directories and files via patterns.
  • Normalization - Provides automated reorganization of class members and accessibility modifiers to standardize class definitions during migration.
  • Framework Integration - Transforms React property types, state, and lifecycle methods into native TypeScript type definitions.
  • Transformation Logic Extensions - Enables building custom transformation plugins using text-based tools or AST implementations.
  • Syntax Tree Transformers - Modifies syntax trees to reorganize class members and apply accessibility modifiers.
  • React TypeScript Migrations - Updates React components and lifecycle methods from JavaScript to native TypeScript type definitions.

Star history

Star history chart for airbnb/ts-migrateStar history chart for airbnb/ts-migrate

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Frequently asked questions

What does airbnb/ts-migrate do?

ts-migrate is an automated migration tool designed to transform JavaScript source code into compiling TypeScript files. It functions as a code migration framework that uses abstract syntax trees to perform large-scale refactoring and structural changes across a project.

What are the main features of airbnb/ts-migrate?

The main features of airbnb/ts-migrate are: JavaScript to TypeScript Migration, AST-Based Source Transformations, Code Transformation Plugin Systems, Code Migration Frameworks, Language Migration Automation, TypeScript Source Transformers, AST-Based Refactorers, JSDoc to TypeScript Converters.

Which projects share features with airbnb/ts-migrate?

Projects with overlapping indexed features include: biomejs/gritql — GritQL is an AST-based code transformation engine and structural search tool. It uses a declarative query language to… openrewrite/rewrite — OpenRewrite is an automated refactoring engine and source-to-source migration framework. It uses a lossless semantic… facebookarchive/codemod — Codemod is a set of software tools for performing structural source code transformations. It functions as an automated… babel/minify — This project is an AST-based code optimizer and compressor for modern ECMAScript, JSX, and TypeScript source code. It… immunant/c2rust — c2rust is a source-to-source translation suite and C-to-Rust transpiler designed to convert C source code and… reactjs/react-codemod — This project is a suite of abstract syntax tree transformation tools designed to automate the migration of source code…

Projects sharing features with Ts Migrate

These projects share indexed features with Ts Migrate. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • biomejs/gritqlbiomejs avatar

    biomejs/gritql

    4,530View on GitHub↗

    GritQL is an AST-based code transformation engine and structural search tool. It uses a declarative query language to identify and rewrite source code patterns across multiple programming languages by matching abstract syntax tree nodes rather than literal text. The system functions as an automated refactoring framework for large-scale migrations and API updates. It distinguishes itself by utilizing sequential transformation pipelines and reusable blueprints that can be synced between local environments and remote repositories. The tool covers a broad range of capabilities including static a

    Rustastcodemodjavascript
    View on GitHub↗4,530
  • babel/minifybabel avatar

    babel/minify

    4,376View on GitHub↗

    This project is an AST-based code optimizer and compressor for modern ECMAScript, JSX, and TypeScript source code. It functions as a JavaScript minifier that uses the Babel toolchain to reduce file size by removing unnecessary characters and whitespace while preserving program logic. The tool is distinguished by its ability to process experimental language proposals and transform modern syntax into browser-compatible versions. It provides specialized handling for React JSX transpilation and strips type annotations from TypeScript files to produce compressed production assets. The system cove

    JavaScript
    View on GitHub↗4,376
  • facebookarchive/codemodfacebookarchive avatar

    facebookarchive/codemod

    4,133View on GitHub↗

    Codemod is a set of software tools for performing structural source code transformations. It functions as an automated codebase migration tool that utilizes abstract syntax tree manipulations rather than simple regular expressions to execute large-scale refactors across multiple files. The project distinguishes itself through an interactive transformation interface that provides colored diffs, allowing users to manually review, accept, or modify each match. It also supports a distributed refactoring workflow, which enables the segmentation of a codebase into assigned work blocks to divide mig

    Python
    View on GitHub↗4,133
  • immunant/c2rustimmunant avatar

    immunant/c2rust

    4,642View on GitHub↗

    c2rust is a source-to-source translation suite and C-to-Rust transpiler designed to convert C source code and libraries into functionally equivalent unsafe Rust code. It operates as a pipeline that preserves original behavior and data structures, producing translated code that compiles as compatible shared libraries or Rust crates. The system includes an automated Rust refactoring framework that uses pattern-based AST rewriting to transform unsafe Rust into safe, idiomatic constructs. It utilizes an ownership inference engine to determine when raw pointers can be converted into safe reference

    Rustmemory-safetymigrationrust
    View on GitHub↗4,642
Compare all 30 related projects→