prezent/doctrine-translatable
Doctrine ORM extension that makes entities translatable: implement a simple interface, attach a listener, and store per-locale translations in a companion table. Fetch localized field values automatically based on the active locale, with fallback support for missing translations.
Consider adopting when:
name_en / name_fr columns.Look elsewhere when:
For executives: This is a small, MIT-licensed building block that shortens the path to shipping multi-language content by removing custom schema work for storing translations. It reduces engineering effort and schedule risk on the localization roadmap at effectively zero license cost. The trade-off is maturity: it is a lightly-adopted library with unclear upstream upkeep. We should gate adoption on a brief technical due-diligence pass and keep a fork/vendor contingency — the permissive license means no vendor lock-in.
For engineering: It provides a Doctrine translatable behavior where translated fields live in a companion entity keyed to the base record, giving a reusable pattern instead of per-entity language columns. Fits only if we are committed to Doctrine. Before adopting: verify maintenance status and provenance, pin the dependency, and be ready to fork under our org. Note it does not cover locale routing, fallback resolution, or SEO — those remain separate design decisions we must own.
How can I help you explore Laravel packages today?