Side by side
jscodeshift vs OpenRewrite
Both stand on code refactoring tools. Which one you can start free with, which one lets you read the code, and what each costs once you pay.
Free plan LinuxMacSelf-hosted+1
jscodeshift combines a multi-file runner with AST transformation methods, dry runs and test utilities. It is a practical fit for developers automating code changes across a project, provided they are comfortable working with codemods and the command line.
Visit jscodeshift Free plan LinuxSelf-hosted
OpenRewrite offers a recipe-based way to make code changes within Maven or Gradle builds, with dry-run review available through Maven. Its one-repository scope and varying recipe access and licenses are important constraints.
Visit OpenRewriteThe facts
| jscodeshift | OpenRewrite | |
|---|---|---|
| Free plan | Yes | Yes |
| Open source | Not published | Not published |
| Runs on | Linux, Mac, Self-hosted, Windows | Linux, Self-hosted |
| Lowest paid plan | Not published | Free or on request |
| Plans published | None | 1 |
| Maker | Not published | Not published |
| Website | jscodeshift.com | openrewrite.org |
| On code refactoring tools | #8 of 22 | #12 of 22 |
jscodeshift: what it does well
- Runs codemods across multiple files.
- Dry-run previews changes without modifying files.
- Offers Babel, Babylon, Flow, TypeScript and TSX parsers.
- Includes Jest and Jasmine transform-testing utilities.
- MIT-licensed and free.
What to know first
- Requires a local installation through npm.
- Babel is the default parser, so other syntax may need selection.
- It is a developer toolkit for code transformations.
OpenRewrite: what it does well
- Maven and Gradle plugins run recipes locally
- Dry-run reports changes and creates diff files
- Supports Java, Kotlin and Groovy
- Recipes cover migrations, security fixes and style
What to know first
- Runs recipes against one repository at a time
- Artifacts require repository authentication
- Some recipes require a Moderne subscription
- Some recipes use non-Apache licensing
Alternatives to jscodeshift Alternatives to OpenRewrite The whole list