Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Laravel Translations Checker Laravel Package

larswiegers/laravel-translations-checker

Find missing Laravel translations fast. Run php artisan translations:check to compare languages and see what keys are missing and where. Supports custom lang directories plus excluding vendor paths, specific languages, and file extensions for cleaner results.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Internationalization (i18n) Quality Assurance: Automates the detection of missing translation keys across all supported languages, reducing post-launch bugs and support overhead. Directly addresses user-reported issues like "broken strings" in non-primary languages.
  • CI/CD Pipeline Enforcement: Enables pre-deployment validation of translation completeness, ensuring consistency across environments (dev/staging/prod). Aligns with DevOps practices by shifting translation checks left in the workflow.
  • Localization Scalability: Supports projects expanding to new languages or regions by proactively identifying gaps before user impact. Critical for global products where translation errors erode trust.
  • Developer Productivity: Eliminates manual cross-checking of translation files, freeing QA teams to focus on higher-value tasks. Reduces context-switching between code and translation tools.
  • Vendor Package Isolation: Safely excludes third-party translation files (e.g., from vendor/) from checks, preventing false positives while maintaining project-wide coverage.
  • Multi-Format Support: Validates both .php and .json translation files, accommodating teams with mixed file formats without forcing standardization.

When to Consider This Package

  • Adopt if:

    • Your Laravel project supports 2+ languages and experiences user-reported translation errors.
    • Translation files are statically defined (not dynamically generated at runtime).
    • You lack a dedicated localization workflow or rely on manual QA for translations.
    • Missing translations block releases or require last-minute fixes.
    • Your team uses GitHub Actions or another CI tool and wants to automate validation.
    • Translation files follow Laravel’s standard resources/lang structure (or a custom path).
  • Avoid if:

    • Your project uses dynamic translation keys (e.g., Lang::get($variableKey)) that can’t be statically analyzed.
    • Translations are stored in a database or non-file-based system (e.g., API-driven).
    • You only support one language or have no internationalization needs.
    • Your translation files are highly fragmented (e.g., spread across non-standard directories without clear patterns).
    • You require real-time translation validation (this is a batch/CLI tool, not a runtime monitor).
  • Look elsewhere if:

    • You need translation key suggestions (e.g., "this key is missing in Spanish—here’s the English version").
    • Your team uses non-Laravel frameworks (e.g., Symfony, Django) or custom translation systems.
    • You require machine translation integration (e.g., auto-generating missing translations via API).

How to Pitch It (Stakeholders)

To Executives/Business Leaders:

"This tool eliminates a hidden cost center: translation errors. Right now, users in [Language X] see broken strings or placeholder text, which damages our brand and drives support tickets. By automating checks for missing translations—before code ships—we’ll reduce post-launch fixes by 80% (based on similar projects). It’s a zero-cost, high-impact fix that aligns with our global growth strategy. The setup takes <1 hour, and it runs automatically in our CI pipeline, so no extra work for the team."

Key Outcomes:

  • Fewer user complaints about "weird text" in non-English markets.
  • Faster releases (no last-minute translation scrambles).
  • Consistent brand messaging across all languages.

To Engineering/Tech Leads:

*"This is a five-minute install that solves a chronic pain point. Here’s how it works:

  1. Install: composer require --dev larswiegers/laravel-translations-checker.
  2. Run: php artisan translations:check in your CI pipeline (or locally).
  3. Fix: The tool flags missing keys like nl.passwords.reset, so you can add them before they hit production.

It’s MIT-licensed, Laravel-native, and plays nicely with our existing resources/lang structure. We can exclude vendor files or specific languages if needed. Best part? It’s dev-only, so no runtime overhead.

Proposal: Let’s add this to our pre-release checklist. It’ll catch issues like [Bug #123] where users saw {{ __('missing.key') }} in French. For the cost of a Composer dependency, we avoid those headaches."*

Engineering Benefits:

  • No code changes required (pure CLI tool).
  • Works with JSON/PHP files—no format migration needed.
  • CI-friendly: Fails builds if translations are incomplete (configurable).
  • Open-source: No vendor lock-in; we can fork if needed.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
codraw/framework-extra-bundle
codraw/messenger
codraw/security
codraw/mailer
codraw/contracts
codraw/profiling
codraw/dependency-injection
codraw/tester
codraw/core
nexmo/api-specification
capell-app/block-library
axium/identity
cetria/laravel-dummy-models
cetria/reflection-helper
agropredict/sso-auth-bundle
evolvestudio/spam-protection
datacore/hub-sdk
develia/commons
cuci/prototurk-sdk
cuci/prototurk-sdk-symfony