Laravel Translations
Installation | Usage | Configuration | Updating | Upgrading from v1 | Contributing
#Introduction
Laravel Translations provides a beautiful UI for managing your application's translations. Import, edit, search, and export translations — all from a clean dashboard. No npm or Vite required in your project.
#Installation
Requirements: PHP 8.3+ and Laravel 11.x or 12.x
composer require outhebox/laravel-translations
Run the install command to publish assets, config, and migrations:
php artisan translations:install
Run migrations:
php artisan migrate
Visit /translations in your browser.
#Usage
#Importing Translations
php artisan translations:import
To overwrite existing translations:
php artisan translations:import --fresh
#Exporting Translations
Export from the UI or via command:
php artisan translations:export
#Check Status
php artisan translations:status
#Configuration
Publish the config file:
php artisan vendor:publish --tag=translations-config
This publishes config/translations.php where you can configure the path, middleware, authentication, source language, import/export settings, and more.
#Updating
After updating the package, re-publish the assets:
php artisan translations:update
You can automate this in your composer.json:
{ "scripts": { "post-update-cmd": ["@php artisan translations:update --ansi"] } }
Looking for AI-powered translations, revision history, and team collaboration? Check out Laravel Translations Pro.
#Upgrading from v1
v2 is a full rewrite with a new frontend (React/Inertia), new database structure, and updated namespace. Click to expand upgrade instructions.
#Steps
- Update the package:
composer require outhebox/laravel-translations:^2.0
- Run the upgrade command to migrate your v1 data:
php artisan translations:upgrade
This will detect your v1 tables, migrate languages, groups, keys, and translations to the new structure.
- Clean up old tables (optional):
php artisan translations:upgrade --cleanup
- Publish the new assets:
php artisan translations:install
#Breaking Changes
- Namespace:
Outhebox\TranslationsUIis nowOuthebox\Translations - Frontend: Vue has been replaced with React (no action needed — assets are pre-compiled)
- Database: New table structure — run the upgrade command above
- Config: New structure — re-publish with
--tag=translations-config
#Contributing
Please see CONTRIBUTING for details.
#Credits
#License
The MIT License (MIT). Please see License File for more information.