{"id":13499216,"url":"https://github.com/openrewrite/rewrite","last_synced_at":"2026-04-02T13:26:44.378Z","repository":{"id":37072627,"uuid":"263442622","full_name":"openrewrite/rewrite","owner":"openrewrite","description":"Automated mass refactoring of source code.","archived":false,"fork":false,"pushed_at":"2025-05-08T05:38:01.000Z","size":98743,"stargazers_count":2694,"open_issues_count":433,"forks_count":411,"subscribers_count":23,"default_branch":"main","last_synced_at":"2025-05-08T06:28:29.385Z","etag":null,"topics":["abstract-syntax-tree","ast","code-search","java","refactoring","refactoring-tools"],"latest_commit_sha":null,"homepage":"https://docs.openrewrite.org","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/openrewrite.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2020-05-12T20:16:14.000Z","updated_at":"2025-05-08T03:32:52.000Z","dependencies_parsed_at":"2024-03-11T20:31:03.485Z","dependency_job_id":"7880689f-0cd5-4988-9e5e-b9c0a42a43fb","html_url":"https://github.com/openrewrite/rewrite","commit_stats":null,"previous_names":[],"tags_count":343,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openrewrite%2Frewrite","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openrewrite%2Frewrite/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openrewrite%2Frewrite/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openrewrite%2Frewrite/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/openrewrite","download_url":"https://codeload.github.com/openrewrite/rewrite/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253660819,"owners_count":21943818,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["abstract-syntax-tree","ast","code-search","java","refactoring","refactoring-tools"],"created_at":"2024-07-31T22:00:30.932Z","updated_at":"2026-01-07T17:26:21.603Z","avatar_url":"https://github.com/openrewrite.png","language":"Java","readme":"\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://docs.openrewrite.org\"\u003e\n    \u003cpicture\u003e\n      \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"https://github.com/openrewrite/rewrite/raw/main/doc/logo-oss-dark.svg\"\u003e\n      \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"https://github.com/openrewrite/rewrite/raw/main/doc/logo-oss-light.svg\"\u003e\n      \u003cimg alt=\"OpenRewrite Logo\" src=\"https://github.com/openrewrite/rewrite/raw/main/doc/logo-oss-light.svg\" width='600px'\u003e\n    \u003c/picture\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n\u003cdiv align=\"center\"\u003e\n\n\u003c!-- Keep the gap above this line, otherwise they won't render correctly! --\u003e\n[![ci](https://github.com/openrewrite/rewrite/actions/workflows/ci.yml/badge.svg)](https://github.com/openrewrite/rewrite/actions/workflows/ci.yml)\n[![Apache 2.0](https://img.shields.io/github/license/openrewrite/rewrite.svg)](https://www.apache.org/licenses/LICENSE-2.0)\n[![Maven Central](https://img.shields.io/maven-central/v/org.openrewrite/rewrite-java.svg)](https://mvnrepository.com/artifact/org.openrewrite/rewrite-java)\n[![Revved up by Develocity](https://img.shields.io/badge/Revved%20up%20by-Develocity-06A0CE?logo=Gradle\u0026labelColor=02303A)](https://ge.openrewrite.org/scans)\n[![Contributing Guide](https://img.shields.io/badge/Contributing-Guide-informational)](https://github.com/openrewrite/.github/blob/main/CONTRIBUTING.md)\n\u003c/div\u003e\n\n\u003ch1 align=\"center\"\u003eFast, repeatable refactoring for developers\u003c/h1\u003e\n\nThe OpenRewrite project (managed by [Moderne](https://www.moderne.ai/)) is an open-source automated refactoring ecosystem for source code, enabling developers to effectively eliminate technical debt within their repositories.\n\nIt consists of an auto-refactoring engine that runs prepackaged, open source refactoring recipes for common framework migrations, security fixes, and stylistic consistency tasks—reducing your coding effort from hours or days to minutes. Build tool plugins like [OpenRewrite Gradle Plugin](https://docs.openrewrite.org/reference/gradle-plugin-configuration) and [OpenRewrite Maven Plugin](https://docs.openrewrite.org/reference/rewrite-maven-plugin) help you run these recipes on one repository at a time.\n\nOpenRewrite recipes have bench strength in Java and are part of a growing community of languages, frameworks, and tech. It’s thousands of great individuals and teams working to make software seamless to update and continuously secure. You can also easily customize recipes for your code.\n\nStart with our [quickstart guide](https://docs.openrewrite.org/running-recipes/getting-started) and let OpenRewrite handle the boring parts of software development for you.\n\nGet and stay informed:\n* Read the [documentation](http://docs.openrewrite.org).\n* Join us on [Slack](https://join.slack.com/t/rewriteoss/shared_invite/zt-nj42n3ea-b~62rIHzb3Vo0E1APKCXEA) or [Discord](https://discord.gg/xk3ZKrhWAb)! We're happy to answer your questions directly.\n* Check out [Community Office Hours](https://www.youtube.com/@moderne-and-openrewrite/streams) where we deep dive topics and answer questions.\n* Subscribe to our [YouTube](https://www.youtube.com/@moderne-and-openrewrite) channel for great videos on OpenRewrite recipes.\n* Follow us on [Twitter](https://twitter.com/openrewrite) and [LinkedIn](https://www.linkedin.com/company/moderneinc).\n\nOpenRewrite is Apache2 licensed and maintained by Moderne. OpenRewrite's refactoring engine and recipes will always be open source.\n\n## Refactoring at scale with Moderne\n\n[Moderne](https://www.moderne.io/) is a commercial platform designed to run the OpenRewrite recipe catalog with incredible efficiency, supporting large codebases and multiple repositories. It’s a place where platform teams and developers can collaborate to drive migrations across their codebases, mass-commit code fixes, and perform large-scale impact analyses.\n\nSee how Moderne and OpenRewrite work in different ways to transform your code.\n\n[![Moderne](./doc/openrewrite_v_moderne.png)](https://www.youtube.com/watch?v=Q-ej2lCJHRs)\n\nModerne freely runs an [open public service](https://www.moderne.io/try-moderne) for the benefit of tens of thousands of open source projects. The platform can streamline your recipe customization and creation, enabling quick assembly and testing. It also includes a multi-repo command line interface (CLI) to enable developers to run and customize recipes locally.\n\n[![Moderne](./doc/moderne_cli.png)](https://www.youtube.com/watch?v=cs-6FJ_mtro)\n\nTo understand better how Moderne can help your team, [contact us](https://www.moderne.io/contact-us).\n\n## Contributing\n\nWe appreciate all types of contributions. See the [contributing guide](https://github.com/openrewrite/.github/blob/main/CONTRIBUTING.md) for detailed instructions on how to get started.\n","funding_links":[],"categories":["Write code to change code","Java","java","Configuration Management"],"sub_categories":["Java"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenrewrite%2Frewrite","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopenrewrite%2Frewrite","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenrewrite%2Frewrite/lists"}