spatie / laravel-horizon-watcher by spatie

Automatically restart Horizon when local PHP files change
356,161
163
3
Package Data
Maintainer Username: spatie
Maintainer Contact: freek@spatie.be (Freek Van der Herten)
Package Create Date: 2022-10-28
Package Last Update: 2024-03-25
Home Page: https://spatie.be/open-source
Language: PHP
License: MIT
Last Refreshed: 2024-03-28 03:16:39
Package Statistics
Total Downloads: 356,161
Monthly Downloads: 37,598
Daily Downloads: 1,885
Total Stars: 163
Total Watchers: 3
Total Forks: 14
Total Open Issues: 2

Automatically restart Horizon when local PHP files change

Latest Version on Packagist GitHub Tests Action Status GitHub Code Style Action Status Total Downloads

How many hours have lost debugging local jobs only to find out that you forgot to restart Horizon?

This package contains an Artisan command horizon:watch that will start Horizon and automatically restart it when any PHP file is created, updated or deleted.

This command is meant to be used in local environment.

screenshot

Support us

We invest a lot of resources into creating best in class open source packages. You can support us by buying one of our paid products.

We highly appreciate you sending us a postcard from your hometown, mentioning which of our package(s) you are using. You'll find our address on our contact page. We publish all received postcards on our virtual postcard wall.

Installation

You can install the package via composer:

composer require spatie/laravel-horizon-watcher --dev

In your project, you should have the JavaScript package chokidar installed. You can install it via npm

npm install chokidar

or Yarn

yarn add chokidar

Optionally, you can publish the config file with this command:

php artisan vendor:publish --tag="horizon-watcher-config"

This is the contents of the published config file:

return [
    /*
     * Horizon will be restarted when any PHP file inside these directories 
     * get created, updated or deleted. You can also specify other kinds
     * of files here.
     */
    'paths' => [
        app_path(),
        config_path(),
        database_path(),
        resource_path('views'),
        base_path('.env'),
        base_path('composer.lock'),
    ],

    /*
     * This command will be executed to start Horizon.
     */
    'command' => 'php artisan horizon',
];

Usage

Run php artisan horizon:watch to start Horizon. When a PHP file in your project gets created, updated or deleted, Horizon will automatically restart.

Testing

composer test

Changelog

Please see CHANGELOG for more information on what has changed recently.

Contributing

Please see CONTRIBUTING for details.

Security Vulnerabilities

Please review our security policy on how to report security vulnerabilities.

Credits

License

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