Laravel Packages

Write Shell Scripts like Blade Components With Task Runner

Published
Write Shell Scripts like Blade Components With Task Runner image

Task Runner for Laravel is a package by Pascal Baljet that lets you write Shell scripts like Blade Components and run them locally or on a remote server:

{{-- resources/views/tasks/deploy-app.blade.php --}}
cd /var/www/html
git pull origin {{ $branch }}
php artisan migrate --database={{ $databaseConnection() }}

Given the conventions in this package, the above template would have an accompanying Task class:

use ProtoneMedia\LaravelTaskRunner\Task;

class DeployApp extends Task
{
    public function __construct(public string $branch) { }

    public function databaseConnection()
    {
        return 'mysql';
    }
}

You might have noticed that the databaseConnection() public method is available as callable in the template. All public methods are available in task blade templates.

If you want to trigger the above task, you can use the package's dispatch() method, which will run it locally. You can also dispatch tasks in the background and also run them on a remote server:

$output = DeployApp::dispatch();

$output = DeployApp::inBackgronud()
    ->onConnection('web')
    ->dispatch();

// API of the task result
$output->getBuffer();
$output->getExitCode();
$output->isSuccessful();
$output->isTimeout();
// returns the buffer as an array
$output->getLines();

This package also has excellent testing helpers, which you can read about in the Documentation. You can learn more about this package, get full installation instructions, and view the source code on GitHub.

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 →
Real-Time Inertia Props With Laravel Reverb image

Real-Time Inertia Props With Laravel Reverb

Read article
PhpStorm 2026.3 Adds an Agent Workspace and PHP 8.6 Support image

PhpStorm 2026.3 Adds an Agent Workspace and PHP 8.6 Support

Read article
Insert Middleware Before or After Existing Laravel Middleware image

Insert Middleware Before or After Existing Laravel Middleware

Read article
Laravel Herd 2: Coding Agents, Workspaces, and Cloud Deploys image

Laravel Herd 2: Coding Agents, Workspaces, and Cloud Deploys

Read article
Strict Request Input Casting in Laravel image

Strict Request Input Casting in Laravel

Read article
Prevent Duplicate File Uploads With Laravel Storage Dedupler image

Prevent Duplicate File Uploads With Laravel Storage Dedupler

Read article