ruwork/template-i18n-bundle
Symfony bundle that brings internationalization to templates, letting you translate template strings and manage locale-aware content. Integrates with Symfony's translator and Twig to keep multi-language templates clean and organized.
messages.en.yml down to template-level catalogs so translators get small, reviewable files instead of one 5,000-key blob. That's a legitimate need for multi-locale marketing sites, design systems, or apps with many feature teams.Consider it only as reading material — a reference implementation for template-scoped translation domains — if you are on Symfony 3.x/4.x, PHP 7.0–7.2, and are willing to vendor or fork the code with no upstream support.
Look elsewhere (which is nearly always) when:
composer install on its constraints, and there will be no fix.lang/ files, __()/@lang, or a package like spatie/laravel-translation-loader if you need DB-backed strings.translation:extract with per-domain catalogs, explicit Twig trans domains, php-translation/* tooling for extraction/sync, and TMS platforms (Crowdin, Lokalise, Phrase) for the actual translator workflow — which is where the real pain usually lives, not in the bundle.Executives: One line — an abandoned 2018 Symfony bundle with no users and no maintenance. There is no cost saving and no credible upside to adopting it. The underlying need (cleaner translation files) is real but cheap to solve in-house or with vendor tooling; the main risk of adopting it is being stuck on end-of-life PHP/Symfony to keep it running.
Engineering: It's a small MIT-licensed Symfony bundle for template-level translation domains. Treat it strictly as a design reference: read it, don't depend on it. It's archived, unreleased since 2018-07-20, and has no dependents — meaning no shared knowledge base if it breaks. If we want the behavior, we implement a Twig extension plus a translation loader against our supported Symfony version in about a day or two, and keep the upgrade path in our own hands. Recommendation: reject for adoption, retain as reference.
How can I help you explore Laravel packages today?