Skip to content
SPECIFICTION
Get listed

OpenRewrite

openrewrite.org

Free plan LinuxSelf-hosted
Visit openrewrite.org
Spec score 8.2 #6 of 22 in Code Refactoring Tools

What it is

OpenRewrite is an open-source ecosystem for automated code refactoring, aimed at updating code and reducing technical debt. It represents code as Lossless Semantic Trees, applies transformations, and prints the result back into source code for review. Its recipes cover framework migrations, security fixes, and style consistency, and can be written in YAML, Refaster templates, or Java. Maven and Gradle plugins run recipes locally as part of builds, one repository at a time. The Maven plugin offers a dry run that reports potential changes and writes diff files; recipes run only when explicitly activated by name. Documented support includes Java, Kotlin, and Groovy, plus formats such as HCL, JSON, Properties, Protobuf, TOML, XML, and YAML. Framework coverage includes Spring, Quarkus, and Micronaut. The recipe index lists 4,183 recipes across modules. Core and language libraries use Apache License 2.0, but some recipes have other licensing terms. Core is free; some artifacts require authenticated repository access, and some recipes require a Moderne subscription.

Spec sheet

Purpose
OpenRewrite is an open-source automated refactoring ecosystem for eliminating technical debt in code repositories.Read 5 Oct 2026 · docs.openrewrite.org
Integrations
The Moderne platform page describes native GitHub, GitLab, and Bitbucket integrations for coordinated pull requests.Read 5 Oct 2026 · moderne.ai
Security
Moderne's press kit states that Moderne is SOC 2 Type 2 compliant.Read 5 Oct 2026 · moderne.ai
Support
The OpenRewrite documentation invites users to ask questions in Slack or Discord and lists [email protected].Read 5 Oct 2026 · docs.openrewrite.org
Company
Moderne's press kit lists Miami, Florida as its headquarters and says OpenRewrite originated as a project Jonathan Schneider started at Netflix.Read 5 Oct 2026 · moderne.ai
Access limitation
OpenRewrite artifacts are distributed through the Code Genome Project repository, which requires authentication; some source-available and proprietary recipes require a Moderne subscription.Read 4 Oct 2026 · docs.openrewrite.org
Build integrations
The project provides Maven and Gradle plugins for running recipes on one repository at a time.Read 5 Oct 2026 · docs.openrewrite.org
Build tools
OpenRewrite provides Maven and Gradle plugins for running recipes as part of a build.Read 4 Oct 2026 · docs.openrewrite.org
Framework coverage
The documentation names Spring, Quarkus, and Micronaut among supported frameworks.Read 4 Oct 2026 · docs.openrewrite.org
How it works
Recipes modify Lossless Semantic Trees and print the modified trees back to source code while honoring original formatting.Read 5 Oct 2026 · docs.openrewrite.org
Integration
The recipe development guide says IntelliJ IDEA 2024.1 or later has built-in OpenRewrite support and recommends enabling the OpenRewrite IntelliJ plugin.Read 4 Oct 2026 · docs.openrewrite.org
Languages
The OpenRewrite project describes Java as its original focus and says language and framework coverage is expanding.Read 5 Oct 2026 · docs.openrewrite.org
Learning and support
The documentation points users to a free self-paced introductory course and offers community help through Slack or Discord.Read 4 Oct 2026 · docs.openrewrite.org
Licensing
The core framework is Apache licensed, while some recipe modules use the Moderne Source Available License or a proprietary license.Read 5 Oct 2026 · docs.openrewrite.org
Local execution
The Maven and Gradle plugins run locally without connecting to Moderne or OpenRewrite, aside from accessing configured artifact repositories.Read 4 Oct 2026 · docs.openrewrite.org
Open source usage
Open source projects can use Apache-licensed and Moderne Source Available recipes through the OpenRewrite Maven and Gradle plugins or Moderne CLI without a license for those repositories.Read 5 Oct 2026 · docs.openrewrite.org
Recipe activation
The Maven plugin runs no recipe unless it is explicitly activated by name.Read 4 Oct 2026 · docs.openrewrite.org
Recipe catalog
The recipe index lists 4,183 recipes across modules.Read 4 Oct 2026 · docs.openrewrite.org
Recipe formats
Recipes can be authored as declarative YAML, Refaster templates, or imperative Java.Read 5 Oct 2026 · moderne.ai
Recipe uses
Recipes support framework migrations, security fixes, and stylistic consistency tasks.Read 4 Oct 2026 · docs.openrewrite.org
Recipes
Recipes automate framework migrations, security fixes, and stylistic consistency tasks.Read 5 Oct 2026 · docs.openrewrite.org
Review before applying
The Maven plugin offers a dry-run goal that reports recipes that would make changes and writes diff files in module target folders.Read 4 Oct 2026 · docs.openrewrite.org
Scale limit
OpenRewrite by itself runs a recipe against one repository at a time; Moderne provides multi-repository execution.Read 5 Oct 2026 · moderne.ai
Source available limits
Source available software may not be commercialized or provided to others as a managed service, though companies may apply it to their own code.Read 5 Oct 2026 · docs.openrewrite.org
Supported code and formats
The documentation lists Java, Kotlin, and Groovy programming languages, plus HCL, JSON, Properties, Protobuf, TOML, XML, and YAML data formats.Read 4 Oct 2026 · docs.openrewrite.org

Plans and prices

OpenRewrite core Free Core framework and Apache-licensed recipes; runs one repository at a time Read 5 Oct 2026 · docs.openrewrite.org

Every OpenRewrite plan and price →

Strong points and limits

Strong points

  • Maven and Gradle plugins run recipes locally
  • Dry-run goal reports proposed changes
  • Recipes must be explicitly activated
  • Supports Java, Kotlin, and Groovy

Limits

  • Runs against one repository at a time
  • Artifacts require authenticated repository access
  • Some recipes require a Moderne subscription
  • Some recipes use source-available or proprietary licenses

Who it suits

It suits developers and teams using Maven or Gradle who want to apply code changes one repository at a time. Teams should review recipe licensing and artifact access requirements before adopting particular recipes.

Verdict

OpenRewrite provides build-integrated recipes and a dry-run path for reviewing proposed edits. Its repository-by-repository scope and differing access or license terms among recipes are important selection factors.

Where Specifiction places it

Alternatives to OpenRewriteAll alternatives →