Laravel Language Extractor

Logat is a Laravel package that helps you extract all translation keys from your application’s source code into JSON language files. It scans your Blade and PHP files for __('...') calls and compiles the results automatically.

Designed to simplify your localization workflow, especially when managing multi-language projects.

Installation

Before installing, add the Logat private repository to your composer.json:

composer config repositories.logat.hexters.com \
    '{"type": "composer", "url": "https://logat.hexters.com"}' \
        --file composer.json

Then install the package using:

composer require hexters/logat --dev

During installation, you will be prompted to enter your license credentials:

Authentication required (logat.hexters.com):
    Username: 872620646
    Password: cf3c8208-7537-451f-9aad-f93771c6b2f6

If successful, you’ll see a message like this:

Info: Hi Asep, thank you for using Logat.
./composer.json has been updated
Running composer update hexters/logat
  - Installing hexters/logat (1.0.0): Extracting archive
Generating optimized autoload files

This package is meant for development use only and should not be required in production environments.

Configuration

If you want to customize the behavior, you can publish the config file:

php artisan vendor:publish --provider="Hexters\Logat\LogatServiceProvider"

This will publish a file to config/logat.php with the following default contents:

return [

    'default' => 'id',

    'locales' => ['en', 'ms', 'id', 'ja'],

    'sources' => [
        'resources/views',
        'app',
    ],

];

You can adjust the default locale, supported languages, and which folders to scan for translation keys.

Usage

To scan your application and generate/update translation files, run:

php artisan logat:collect

This command will:

  • Search for all __('...') keys in the specified source directories
  • Merge with any existing translation files
  • Save the output in the lang directory as individual JSON files for each language

To remove unused keys that no longer exist in your source code, run:

php artisan logat:clean

This command will:

  • Scan your application for active translation keys
  • Remove outdated keys from each language file
  • Keep your JSON files clean and relevant

Output

After running the command, you’ll get files like:

lang/
├── en.json
├── id.json
├── ja.json
└── ms.json

Each file will contain the translation keys found in your app. Any untranslated key will have an empty string as its value.

Example:

{
    "Dashboard": "Dashboard",
    "User Account": "User Account"
}

You can use AI to change the value of the result generator

License

This package is licensed under the MIT License.

You can obtain a free license key to use this package from: https://hexters.com/product/logat

Free

ℹ️ This product uses license duration based on quantity. Quantity 1 = 1 lifetime license. Adjust quantity to set your license period.

Logat is a Laravel package that helps you extract all translation keys from your Blade and PHP files into JSON language files — making your localization workflow faster and cleaner.

Categories: ,

Package(s)

  • hexters/logat
    • 1.0.0May 18, 2025

Reviews

There are no reviews yet.

Be the first to review “Laravel Language Extractor”

Your email address will not be published. Required fields are marked *

You can use the Markdown in the comment form.

We hope our tools and source code make your development faster — and your work more enjoyable.
© 2025 Hexters. All rights reserved.