allwrite is a CLI tool and a collection of OpenRewrite recipes for automated code transformations across YAML, Gradle, Java/Kotlin, and Spring projects.
It wraps OpenRewrite’s runtime into a CLI that can run recipes by name, integrate with GitHub Actions, and work with Dependabot pull requests.
Use friendly recipe names instead of fully qualified Java class names, combine OpenRewrite’s ecosystem with project-specific migrations, and package private recipes as external JARs.
pl.allegro.tech.allwriteallwrite is a modular project, utilizing dependency injection capabilities from the Koin framework.
It consists of the following Gradle modules (that may contain one or more Koin modules):
RecipeExecutor, RecipeSource, RecipeCoordinates) for interacting with allwrite-runtimeAllwriteRecipe, AllwriteScanningRecipe, RecipeMetadata)allwrite-api interfaces); equivalent of the Domain layerallwrite-cli