PHPackages                             badinansoft/nova-language-switch - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Localization &amp; i18n](/categories/localization)
4. /
5. badinansoft/nova-language-switch

ActiveLibrary[Localization &amp; i18n](/categories/localization)

badinansoft/nova-language-switch
================================

A Laravel Nova package to switch language in your application

3.0.0(1y ago)26611.2k↑13.8%15[1 issues](https://github.com/badinansoft/nova-language-switch/issues)1MITPHPPHP ^7.3|^8.0

Since Oct 19Pushed 1y ago3 watchersCompare

[ Source](https://github.com/badinansoft/nova-language-switch)[ Packagist](https://packagist.org/packages/badinansoft/nova-language-switch)[ Docs](https://github.com/badinansoft/nova-language-switch)[ RSS](/packages/badinansoft-nova-language-switch/feed)WikiDiscussions master Synced 2d ago

READMEChangelog (8)Dependencies (1)Versions (9)Used By (1)

A Laravel Nova Tool to add language switcher to your application
----------------------------------------------------------------

[](#a-laravel-nova-tool-to-add-language-switcher-to-your-application)

[![Latest Version on Packagist](https://camo.githubusercontent.com/36d71846c1b6c1f40fcd3361e2a6b77fdb05b47536f35d043bda3e37a8d0f6c9/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f626164696e616e736f66742f6e6f76612d6c616e67756167652d7377697463682e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/badinansoft/nova-language-switch)[![Total Downloads](https://camo.githubusercontent.com/ec558e0ca2815625c7817a4dcc2b118b5ffc35b7e56cc13ab0f3ff4e330fc7df/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f626164696e616e736f66742f6e6f76612d6c616e67756167652d7377697463682e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/badinansoft/nova-language-switch)

This [Nova](https://nova.laravel.com) tool allows you to:

- Add a language switcher to the header of the Nova application
- Handle language switching and cache the current locale across multiple browsers
- Switch the application direction for RTL-supported languages

Requirements
------------

[](#requirements)

- PHP: &gt;=8.0
- Laravel Nova: ^4.0|^5.0

> **Note**: This package is not compatible with Nova 3

Features
--------

[](#features)

- Add multiple languages from the configuration
- Remember locale settings using cache (no database table required)
- Auto-inject language switcher to the application header
- Easy 4-step setup

Screenshots
-----------

[](#screenshots)

EnglishArabic[![English Screenshot](https://raw.githubusercontent.com/badinansoft/nova-language-switch/master/docs/en-screenshot.png)](https://raw.githubusercontent.com/badinansoft/nova-language-switch/master/docs/en-screenshot.png)[![Arabic Screenshot](https://raw.githubusercontent.com/badinansoft/nova-language-switch/master/docs/ar-screenshot.png)](https://raw.githubusercontent.com/badinansoft/nova-language-switch/master/docs/ar-screenshot.png)Installation
------------

[](#installation)

Install the Nova tool via Composer:

```
composer require badinansoft/nova-language-switch
```

### Laravel 10 and Earlier

[](#laravel-10-and-earlier)

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
    ],
];
```

### Laravel 11

[](#laravel-11)

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"
```

### Configuration

[](#configuration)

Edit the published config file (`config/language-switch.php`):

```
return [
    /**
     * Supported languages for your application
     * @var array
     */
    'supported-languages' => [
        'en' => 'English',
        'ar' => 'Arabic',
        // Add or remove languages as needed
    ],

    /**
     * Languages that require RTL support
     * @var array
     */
    'rtl-languages' => [
        'ar'
        // Add other RTL language codes
    ],
];
```

Credits
-------

[](#credits)

- [Shahab Zebari](https://github.com/shahabzebare)
- [All Contributors](../../contributors)

License
-------

[](#license)

The MIT License (MIT). Please see [License File](LICENSE.md) for more information.

###  Health Score

45

—

FairBetter than 91% of packages

Maintenance38

Infrequent updates — may be unmaintained

Popularity50

Moderate usage in the ecosystem

Community22

Small or concentrated contributor base

Maturity57

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 50% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~118 days

Recently: every ~181 days

Total

8

Last Release

524d ago

Major Versions

1.2.1 → 2.0.02024-08-01

2.0.0 → 3.0.02025-01-25

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/66379072?v=4)[BadinanSoft](/maintainers/badinansoft)[@badinansoft](https://github.com/badinansoft)

![](https://avatars.githubusercontent.com/u/6207967?v=4)[shahab zebari](/maintainers/shahabzebare)[@shahabzebare](https://github.com/shahabzebare)

---

Top Contributors

[![badinansoft](https://avatars.githubusercontent.com/u/66379072?v=4)](https://github.com/badinansoft "badinansoft (11 commits)")[![shahabzebare](https://avatars.githubusercontent.com/u/6207967?v=4)](https://github.com/shahabzebare "shahabzebare (8 commits)")[![agustinprod](https://avatars.githubusercontent.com/u/343407?v=4)](https://github.com/agustinprod "agustinprod (1 commits)")[![DylanovE](https://avatars.githubusercontent.com/u/90382484?v=4)](https://github.com/DylanovE "DylanovE (1 commits)")[![veneliniliev](https://avatars.githubusercontent.com/u/5311085?v=4)](https://github.com/veneliniliev "veneliniliev (1 commits)")

---

Tags

laraveli18nlanguagetranslationswitchnova

### Embed Badge

![Health badge](/badges/badinansoft-nova-language-switch/health.svg)

```
[![Health](https://phpackages.com/badges/badinansoft-nova-language-switch/health.svg)](https://phpackages.com/packages/badinansoft-nova-language-switch)
```

###  Alternatives

[laravel-lang/common

Easily connect the necessary language packs to the application

1593.8M34](/packages/laravel-lang-common)[outl1ne/nova-translatable

A laravel-translatable extension for Laravel Nova.

203469.9k10](/packages/outl1ne-nova-translatable)[optimistdigital/nova-translatable

A laravel-translatable extension for Laravel Nova.

202461.6k5](/packages/optimistdigital-nova-translatable)[statikbe/laravel-nova-chained-translation-manager

The Laravel Nova Chained Translation Manager allows you to easily edit and customise the translations of your current Laravel environment.

1630.1k](/packages/statikbe-laravel-nova-chained-translation-manager)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
