SoureCode monorepo. Reusable Symfony components and bundles, shipped together as one install boundary.
src/SoureCode/Component/<Name>/ # framework-agnostic component
src/SoureCode/Bundle/<Name>Bundle/ # Symfony bundle integration
Each sub-package has its own composer.json. The root composer.json is regenerated by bin/merge from those — never hand-edited.
Add a dependency to a sub-package:
composer require --no-install --working-dir=src/SoureCode/Component/<Name> <vendor>/<package>Regenerate the root manifest and install:
bin/merge
composer installRun the test suite:
vendor/bin/phpunit- PHP
>=8.5 - Symfony components
^8.0 - Doctrine ORM
^3.6