A Laravel Nova package to switch language in your application
badinansoft/nova-language-switch is a Laravel package for a laravel nova package to switch language in your application.
It currently has 27 GitHub stars and 658.319 downloads on Packagist (latest version 3.0.0).
Install it with composer require badinansoft/nova-language-switch.
Discover more Laravel packages by badinansoft
or browse all Laravel packages to compare alternatives.
Last updated
This Nova tool allows you to:
Note: This package is not compatible with Nova 3
| English | Arabic |
|---------|--------|
|
|
|
Install the Nova tool via Composer:
composer require badinansoft/nova-language-switch
Register the tool in app/Providers/NovaServiceProvider.php:
public function tools()
{
return [
// ...
new \Badinansoft\LanguageSwitch\LanguageSwitch(),
];
}
Register the middleware in app/Http/Kernel.php:
protected $middlewareGroups = [
'web' => [
// ...
\Badinansoft\LanguageSwitch\Http\Middleware\LanguageSwitch::class
],
];
Register the tool in app/Providers/NovaServiceProvider.php (same as Laravel 10):
public function tools()
{
return [
// ...
new \Badinansoft\LanguageSwitch\LanguageSwitch(),
];
}
Register the middleware in bootstrap/app.php:
->withMiddleware(function (Middleware $middleware) {
$middleware->web(append: [
\Badinansoft\LanguageSwitch\Http\Middleware\LanguageSwitch::class,
]);
})
Publish the configuration file:
php artisan vendor:publish --provider="Badinansoft\LanguageSwitch\ToolServiceProvider" --tag="config"
Edit the published config file (config/language-switch.php):
return [
/**
* Supported languages for your application
* @var array<string, string>
*/
'supported-languages' => [
'en' => 'English',
'ar' => 'Arabic',
// Add or remove languages as needed
],
/**
* Languages that require RTL support
* @var array<string>
*/
'rtl-languages' => [
'ar'
// Add other RTL language codes
],
];
The MIT License (MIT). Please see License File for more information.