amirami/localizator
Localizator is a Laravel package for managing localization files. It scans your application for translation strings, generates and updates language files, and provides a web interface for editing translations. Simplify multilingual Laravel projects with automatic scanning and convenient translation...
__(), @lang, and untranslated literals, this package gives you an instant artisan-based inventory. It is the "buy" option priced at a composer require.Consider it when:
lang/ file convention — the package's value is the direct output into those files.Look elsewhere when:
NOASSERTION, so verify the actual license terms (the repo is MIT-styled but must be confirmed) before shipping it in a commercial codebase.Adoption note for the PM: with ~244 stars and zero dependent packages tracked, this is a small, single-maintainer tool (latest release March 2025). Treat it as a velocity helper, not foundational infrastructure — pin the version, keep it in require-dev if possible, and confirm there is a fallback manual process so a stalled maintenance status never blocks a release.
To executives (30 seconds): Launching in a new language currently means engineers manually hunting for every untranslated string — slow, error-prone, and hard to estimate. Localizator turns that into a single command that produces the exact list of strings we need to translate. That means faster, more predictable market launches, better translation budget forecasts, and no new vendor contract. Cost is effectively zero; the main caveat is that it's a small open-source tool, so we treat it as a workflow accelerator, not a platform dependency.
To engineering: One composer require (dev dependency recommended) and one artisan command produces a complete inventory of untranslated strings across your Blade templates and PHP files, written directly into the standard lang/ structure. No runtime footprint, no config gymnastics, and it fits naturally into CI or a pre-release checklist. Check it against a representative slice of the codebase first, verify the license (NOASSERTION), and expect it to cover Laravel conventions rather than bespoke templating.
To design/content: This gives us a trustworthy answer to "how much copy actually needs translating?" — per screen and per module — so localization scope can be planned alongside feature work instead of discovered at the end.
Decision being asked for: Approve a time-boxed trial on one module to measure output quality and effort saved. If it holds up, adopt it as the standard extraction step in the localization workflow; if the license or maintenance posture is a concern, keep it as an internal tool and pair it with a TMS CLI later.
How can I help you explore Laravel packages today?