acdphp/laravel-schedule-police

Stop, start or execute scheduled commands from a simple dashboard without redeploying, while maintaining the visibility, control, and reviewability of the configurations in your codebase.
30,409 51
Install
composer require acdphp/laravel-schedule-police
Latest Version:v2.1.0
PHP:^8.2
Laravel:11 · 12 · 13
Older releases:8 · 9 · 10
License:MIT
Last Updated:Apr 17, 2026
Links: GitHub  ·  Packagist
Maintainer: acdphp

Laravel Schedule Police

Latest Stable Version

Use this if you need to:

  • :white_check_mark: Stop and start scheduled commands without redeploying.
  • :white_check_mark: Execute commands without going into server console.
  • :white_check_mark: Keep the visibility, control, and reviewability of the schedule configurations in your codebase.

Compatibility Matrix

Laravel Schedule Police
11.x ~ 13.x 2.x
8.x ~ 10.x 1.x

Installation

  1. Install the package

    composer require acdphp/laravel-schedule-police
    
  2. Run the migration.

    php artisan migrate
    
  3. Publish assets

    php artisan vendor:publish --tag=schedule-police-assets --force
    

Config

You may override the config by publishing it.

php artisan vendor:publish --tag=schedule-police-config

You may also just define environment variables if you don't need to publish the config.

  • Disable command execution in the dashboard.
SCHEDULE_POLICE_ALLOW_EXECUTE_CMD=false
  • Add prefix to routes.
SCHEDULE_POLICE_URL_PREFIX=your-prefix

Dashboard

After installation, you may access the dashboard via the /schedule-police route.

Authorization

By default, you will only be able to access this dashboard in the local environment. However, you may specify authorization for non-local environments by defining viewSchedulePolice gate, typically within the boot method of the App\Providers\AuthServiceProvider class.

public function boot(): void
{
    Gate::define('viewSchedulePolice', function (User $user) {
        // return true or false
    });
}

Screenshots

Events list page

events page

Execute page

execute page


Testing

composer test

# with docker-compose
docker-compose run --rm test-php84

Linting and static analysis

composer lint

# with docker-compose
docker-compose run --rm lint

Lint Fix

composer lint-fix

# with docker-compose
docker-compose run --rm lint-fix

License

The MIT License (MIT). Please see License File for more information.

Related Packages

doctrine/dbal

Powerful PHP database abstraction layer (DBAL) with many features for database s...

644,549,754 9,698
laravel/framework

The Laravel Framework.

598,760,099 34,966
laravel/tinker

Powerful REPL for the Laravel framework.

507,193,856 7,441
laravel/serializable-closure

Laravel Serializable Closure provides an easy and secure way to serialize closur...

423,477,751 607
nunomaduro/collision

Cli error handling for console/command-line PHP applications.

403,217,078 4,664

Version History

Version Released PHP Laravel License
v2.1.0 ^8.2 ^11.0|^12.0|^13.0 MIT
v2.0.3 ^8.2 ^11.0|^12.0 MIT
v2.0.2 ^8.2 ^11.0 MIT
v2.0.1 ^8.2 ^11.0 MIT
v2.0.0 ^8.2 ^11.0 MIT