LarsWiegers/
laravel-translations-checker
g4t.io

Find Missing Translations with the Laravel Translations Checker

255 stars by Paul Redmond

Make sure your laravel translations are checked and are included in all languages.

README from LarsWiegers/laravel-translations-checker Open on GitHub →

Laravel translations checker

Latest Version on Packagist Total Downloads GitHub Actions

Laravel translation checker

Ever feel that you are missing translations in some languages you support? Get users emailing you about weird strings on their screen?

Use the laravel translation checker and get direct feedback where and what translations you are missing!

Installation

You can install the package via composer:

composer require --dev larswiegers/laravel-translations-checker

Usage

Use the command below, it is that easy!

php artisan translations:check

Different directory

Are your translations in a weird directory? use the --directory option like this:

php artisan translations:check --directory=resources/lang

Exclude directories

Some packages have their own language files, it is probably smart to exclude them.

php artisan translations:check --excludedDirectories=lang/vendor

This option is also available as configuration option 'excluded_directories'.

For example:

    'excluded_directories' => ['lang/vendor'],

Exclude languages

This section provides instructions on how to exclude specific languages from being checked.

To exclude languages, follow these steps:

  1. Open the project's configuration file.

  2. Locate the translation-checker file.

  3. Add the language codes of the languages you want to exclude to the exclude_languages field.

For example:

    exclude_languages = ["en", "fr", "es"]

Exclude file types

  1. Let's say you only want to run on the php or json files in your project than you can use the --excludedFileExtensions option like this:
php artisan translations:check --excludedFileExtensions=php

This option is also available as configuration option 'excluded_file_extensions'.

JSON support

The package supports both .php files and .json files for the translations.

Running in github actions?

  translations:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - name: Setup PHP
        uses: shivammathur/setup-php@v2
        with:
          php-version: '8.0'
          extensions: mbstring, intl
          ini-values: post_max_size=256M, max_execution_time=180
          coverage: xdebug
          tools: php-cs-fixer, phpunit
      - name: Install Dependencies
        run: composer install -q --no-interaction --no-scripts
      - name: Run translations check
        run: php artisan translations:check --excludedDirectories=vendor

What does the output look like?

The language nl (resources/lang/nl) is missing the file ( passwords.php )
Missing the translation with key: nl.passwords.reset
Missing the translation with key: nl.passwords.sent
Missing the translation with key: nl.passwords.throttled
Missing the translation with key: nl.passwords.token
Missing the translation with key: nl.passwords.user

Testing

composer test

Changelog

Please see CHANGELOG for more information what has changed recently.

Contributing

Please see CONTRIBUTING for details.

Security

If you discover any security related issues, please email larswiegers@live.nl instead of using the issue tracker.

Credits

License

The MIT License (MIT). Please see License File for more information.

More from the ecosystem

marcreichel/
laya-php
g4t.io
3 53

LayaPHP: Self-Hosted Text Classification for PHP and Laravel

Classify text in PHP without an LLM bill: typed decisions in 100+ languages, self-hosted. Laravel-ready SDK for Laya, a Jev AI alternative.

ai classification decision-engine
marcreichel/laya-php via Laravel News
Josh-Dovey/
postcodes-laravel
g4t.io
5 9

Postcodes for Laravel: GB Postcode Lookup and Geography Data

Postcodes for Laravel adds typed GB postcode lookups, validation, geography data, distance searches, and test fakes through the GB Postcodes API.

Josh-Dovey/postcodes-laravel via Laravel News
RedberryProducts/
mailbox-for-laravel
g4t.io
4 115

Mailbox for Laravel: Preview and Test Rendered Email

Mailbox for Laravel captures outgoing mail in a local dashboard and lets you test rendered HTML, recipients, and attachments with fluent assertions.

RedberryProducts/mailbox-for-laravel via Laravel News