eloquage / filament-horizon
Filament dashboard pages and widgets for monitoring Laravel Horizon queues.
Fund package maintenance!
Requires
- php: ^8.2
- filament/filament: ^4 || ^5
- laravel/horizon: ^5
- spatie/laravel-package-tools: ^1
Requires (Dev)
- larastan/larastan: ^3.0
- laravel/pint: ^1
- mockery/mockery: ^1.6
- nunomaduro/collision: ^8
- orchestra/testbench: ^9 || ^10 || ^11
- pestphp/pest: ^3 || ^4
- pestphp/pest-plugin-laravel: ^3 || ^4
- phpstan/extension-installer: ^1.4
Suggests
None
Provides
None
Conflicts
None
Replaces
None
This package is auto-updated.
Last update: 2026-10-23 14:01:01 UTC
README
Filament Horizon adds Laravel Horizon queue monitoring pages and widgets to a Filament admin panel. It includes a dashboard, job and batch views, failed-job tools, tag monitoring, metrics, and worker status.
Requirements
- PHP 8.2 or later
- Laravel 12 or 13
- Filament 4 or 5
- Laravel Horizon 5
Install
Install the package:
composer require eloquage/filament-horizon
Register the plugin in your Filament panel provider:
use Eloquage\FilamentHorizon\FilamentHorizonPlugin; use Filament\Panel; public function panel(Panel $panel): Panel { return $panel->plugins([ FilamentHorizonPlugin::make(), ]); }
The Horizon pages then appear in the panel navigation. Laravel Horizon must be installed and configured in the application.
Access control
In production, access uses Laravel Horizon's viewHorizon gate. Define that gate to control which users can view the pages:
use Illuminate\Support\Facades\Gate; Gate::define('viewHorizon', fn ($user) => $user->is_admin);
For a trusted development panel, authorization can be disabled on the plugin:
FilamentHorizonPlugin::make()->authorization(false)
Widgets
The package also provides widgets that can be added to a Filament dashboard:
use Eloquage\FilamentHorizon\Widgets\StatsOverview; use Eloquage\FilamentHorizon\Widgets\WorkloadWidget; use Eloquage\FilamentHorizon\Widgets\WorkersWidget; public function getWidgets(): array { return [StatsOverview::class, WorkloadWidget::class, WorkersWidget::class]; }
Development
composer install
composer test
See CHANGELOG.md for changes and LICENSE.md for the license.
