Chorale
Chorale is a CLI tool for managing PHP monorepos. It uses a plan/apply workflow to keep package metadata and the root package in sync.
Installation
cd tools/chorale
composer install
Usage
Run the commands from the project root:
# create chorale.yaml by scanning packages
php bin/chorale setup
# preview changes without modifying files
php bin/chorale plan --json > plan.json
# apply an exported plan
php bin/chorale apply --file plan.json
# build and apply a plan in one go
php bin/chorale run
Chorale automatically merges all package composer.json
files into the root composer.json
so the monorepo can be installed as a single package. Any dependency conflicts are recorded under the extra.chorale.dependency-conflicts
section for review.
Commands
setup
– generate configuration and validate required files.plan
– build a plan for splitting packages and root updates.run
– build and immediately apply a plan.apply
– execute steps from a JSON plan file.
Last updated
Was this helpful?