Laravel Packages

Scheduler List: A Web Dashboard for Laravel's Scheduled Tasks

Published
Scheduler List: A Web Dashboard for Laravel's Scheduled Tasks image

Scheduler List by Akshay is a Laravel package that puts your scheduled tasks behind a web dashboard instead of leaving them in php artisan schedule:list output. It reads the tasks you've registered, shows their cron expressions and next run times, and lets you trigger one from the browser and watch its output stream back.

A List of Every Scheduled Task

The dashboard reads the tasks you register in your console routes and renders them with their schedule, next run time, timezone, and any constraints attached to them. A description() call on a task carries through to the UI, so it's worth adding one:

Schedule::command('inspire')
->everyMinute()
->description('Displays a random motivational quote.');

Tasks are grouped by type—Artisan commands, closures, and shell jobs—and you can filter the list by type or run a search across command names, expressions, and descriptions.

Scheduler List UI
Scheduler List UI

Running a Task on Demand

When manual execution is enabled, you can run a task from the dashboard rather than waiting for its next scheduled tick. The package opens a console overlay and streams the command's terminal output back in real time, up to a configurable character limit. This is off by default, and the output_limit config caps how much output the UI will hold (12,000 characters out of the box).

Disabled by Default, Behind Auth

The dashboard ships disabled and gated behind the web and auth middleware. Both the dashboard itself and manual execution are opt-in through environment variables:

SCHEDULER_LIST_ENABLED=true
SCHEDULER_LIST_MANUAL_EXECUTION=false

For anything beyond a local machine, the README recommends adding a gate so only the right users reach it:

Gate::define('viewSchedulerList', function ($user) {
return $user->is_admin;
});

Running arbitrary scheduled commands from a browser is a real risk, so keep manual_execution off in production unless you've locked down access.

Installation

Install the package via Composer and publish its config:

composer require devakshay/scheduler-list-laravel
php artisan vendor:publish --tag="scheduler-list-laravel-config"

Once enabled, the dashboard lives at /schedulers. You can read more and view the source on GitHub.

You can try it on the demo site.

Paul Redmond photo

Staff writer at Laravel News. Full stack web developer and author.

Sponsored

laravelcloud logo
Laravel Cloud

Easily create and manage your servers and deploy your Laravel applications in seconds.

Visit Laravel Cloud

The latest

View all →
CPX: The Composer Package Executor for PHP image

CPX: The Composer Package Executor for PHP

Read article
Laravel AI SDK Adds Human-in-the-Loop Tool Approval image

Laravel AI SDK Adds Human-in-the-Loop Tool Approval

Read article
Pest 5 Released With Test Impact Analysis, Agent Verification, and Evals image

Pest 5 Released With Test Impact Analysis, Agent Verification, and Evals

Read article
Queue-SQL: Run Mass Deletes and Updates Across Parallel Queue Jobs image

Queue-SQL: Run Mass Deletes and Updates Across Parallel Queue Jobs

Read article
Blade Formatting in Laravel Pint image

Blade Formatting in Laravel Pint

Read article
Inertia DevTools Is Now on the Chrome Web Store image

Inertia DevTools Is Now on the Chrome Web Store

Read article