enhavo/translation-bundle
Enhavo Translation Bundle is a subtree split of the open-source Enhavo CMS, a flexible PHP CMS built on the full-stack Symfony framework for managing complex data structures through a clean, usable interface.
enhavo/enhavo. That is an upgrade-path and dependency-ownership decision the PM should be aware of, because it determines who is on the hook when something breaks.Consider it only when:
enhavo/enhavo or the Enhavo application skeleton, not this repository directly.Look elsewhere when:
spatie/laravel-translatable or astrotomic/laravel-translatable and move on.symfony/translation for message catalogues and something like a2lix/translation-form-bundle plus Doctrine behaviours for translated entities outside a full CMS.To executives — one line: this is not a product we adopt; it is a component inside the Enhavo CMS, so the real question is "are we choosing Enhavo?", not "should we use this bundle?"
What to say: Enhavo is an MIT-licensed, Symfony-based CMS with a clean editorial UI and built-in support for complex, structured content across multiple languages. Because translation is native, a multilingual content requirement can be met without licensing a SaaS CMS — a real cost and data-residency win if we are already a PHP/Symfony shop. The trade-off is ecosystem maturity: the project has a small footprint, and this component is a read-only split of the main repository with no independent community, no independent versioning promise, and effectively no third-party adoption signal. We are buying capability at near-zero licence cost while taking on supportability and key-person risk.
To engineering: the bundle is only usable in lockstep with enhavo/enhavo. Expect to track monorepo releases, read the main repository for issues and documentation, and never add the split as an independent Composer dependency in a non-Enhavo application. Budget for writing our own internal "how Enhavo translation works" note during the spike — treat that as a required deliverable, not a nice-to-have.
Recommendation: fund a two-to-three day timeboxed spike — stand up the Enhavo skeleton, model one content type in two locales, run a translator through the admin workflow, and measure upgrade friction. A negative result is cheap. A positive result is conditional approval pending a support plan: who owns upgrades, and what we do if upstream goes quiet. Do not score this package against mature i18n libraries; it will rate near zero and tell you nothing you did not already know.
How can I help you explore Laravel packages today?