Butterfly is an application code transformation tool, and commonly it is used to perform automated application migrations, upgrades and source code and configuration changes.
Visit Butterfly website for further information.
Features
- Automated application source code transformations
- Application upgrades
- Application migrations
- Source code and configuration changes
- Plugable mechanism for Butterfly extensions, containing transformation and/or upgrade templates
- Multiple types of ready-to-use transformation utilities, including for example manipulating text, properties, XML, POM and Java files
- Resilient transformation pipeline
- Shared context among transformation utilities
- Error handling
- Dependency management among transformation utilities
- Conditional transformation utilities
- Transformation utilities execution in different modes and fashions
- Configurable utilities
- Anonymous utilities
- Multiple execution
- Group execution
- In-loop execution
- Post-transformation features
- Manual steps Reporting
- Metrics
- APIs
- Extensions API
- API for custom transformation utilities and operations
- Facade for Java application integration
- Command-Line-Interface tool
- Logging in silent or verbose mode, in info or debug level, and on console or file
Quick start
Read the Quick Start page to learn how to use Butterfly by transforming a sample application.
Visit Butterfly website for further information.
Release notes
See Butterfly release notes.
Reporting an issue
Please open an issue using our GitHub issues page.
Contributing
You are very welcome to contribute to Butterfly! Read our Contribution guidelines.
License
This project is licensed under the MIT License.