pxlrbt / filament-environment-indicator
Indicator for the current environment inside Filament
Fund package maintenance!
pxlrbt
Installs: 255 571
Dependents: 5
Suggesters: 0
Security: 0
Stars: 122
Watchers: 5
Forks: 13
Open Issues: 0
Requires
- php: ^8.0
- filament/filament: ^3.0-stable
Requires (Dev)
- laravel/pint: ^1.10
README
Filament Environment Indicator
Never confuse your tabs with different Filament environments again.
Installation via Composer
composer require pxlrbt/filament-environment-indicator
Usage
To use this plugin register it in your panel configuration:
use pxlrbt\FilamentEnvironmentIndicator\EnvironmentIndicatorPlugin; $panel ->plugins([ EnvironmentIndicatorPlugin::make(), ]);
Configuration
Out of the box, this plugin adds a colored border to the top of the admin panel and a badge next to the search bar.
You can customize any behaviour via the plugin object.
Customizing the view
Use php artisan vendor:publish --tag="filament-environment-indicator-views"
to publish the view to the resources/views/vendor/filament-environment-indicator
folder. After this you can customize it as you wish!
Visibility
By default, the package checks whether you have Spatie permissions plugin installed and checks for a role called super_admin
. You can further customize whether the indicators should be shown.
use pxlrbt\FilamentEnvironmentIndicator\EnvironmentIndicatorPlugin; $panel->plugins([ EnvironmentIndicatorPlugin::make() ->visible(fn () => auth()->user()?->can('see_indicator')) ]);
Colors
You can overwrite the default colors if you want your own colors or need to add more. The ->color()
method accepts any Filament's Color object or a closure that returns a color object.
use pxlrbt\FilamentEnvironmentIndicator\EnvironmentIndicatorPlugin; use Filament\Support\Colors\Color; $panel->plugins([ EnvironmentIndicatorPlugin::make() ->color(fn () => match (app()->environment()) { 'production' => null, 'staging' => Color::Orange, default => Color::Blue, }) ]);
Indicators
By default, both indicators are displayed. You can turn them off separately.
use pxlrbt\FilamentEnvironmentIndicator\EnvironmentIndicatorPlugin; use Filament\Support\Colors\Color; $panel->plugins([ EnvironmentIndicatorPlugin::make() ->showBadge(false) ->showBorder(true) ]);
Git Branch
You can enable the display of the current git branch in the badge via ->showGitBranch()
. This requires the exec()
function to be enabled in your PHP configuration.
use pxlrbt\FilamentEnvironmentIndicator\EnvironmentIndicatorPlugin; use Filament\Support\Colors\Color; $panel->plugins([ EnvironmentIndicatorPlugin::make() ->showGitBranch() ]);
Contributing
If you want to contribute to this packages, you may want to test it in a real Filament project:
- Fork this repository to your GitHub account.
- Create a Filament app locally.
- Clone your fork in your Filament app's root directory.
- In the
/filament-environment-indicator
directory, create a branch for your fix, e.g.fix/error-message
.
Install the packages in your app's composer.json
:
"require": { "pxlrbt/filament-environment-indicator": "dev-fix/error-message as main-dev", }, "repositories": [ { "type": "path", "url": "filament-environment-indicator" } ]
Now, run composer update
.