rahul900day / laravel-console-spinner
Laravel Console Spinner is a spinner output for Laravel command line.
Installs: 122 571
Dependents: 2
Suggesters: 0
Security: 0
Stars: 76
Watchers: 2
Forks: 3
Open Issues: 0
pkg:composer/rahul900day/laravel-console-spinner
Requires
- php: ^7.3|^8.0
- illuminate/console: ^6.0|^7.0|^8.0|^9.0|^10.0|^11.0|^12.0
- illuminate/support: ^6.0|^7.0|^8.0|^9.0|^10.0|^11.0|^12.0
README
Laravel Console Spinner was created by Rahul Dey. It is just a custom Progress Bar inspired by icanhazstring/symfony-console-spinner.
Installation
Requires PHP 7.3+
Via Composer:
composer require rahul900day/laravel-console-spinner
You can publish the config file with:
php artisan vendor:publish --tag=console-spinner-config
This is the contents of the published config file:
return [
'chars' => ['⠏', '⠛', '⠹', '⢸', '⣰', '⣤', '⣆', '⡇'],
];
Usage
class SimpleLaravelCommand extends Command
{
/**
* Execute the console command.
*
* @return void
*/
public function handle()
{
$spinner = $this->spinner($users->count());
$spinner->setMessage('Loading...');
$spinner->start();
foreach ($users as $user) {
// Do your stuff...
$spinner->advance();
}
$spinner->finish();
}
}
The $spinner is compatible with Symfony ProgressBar, so you can run any method of this class.
Or you can also use with withSpinner method by giving an iterable.
$this->withSpinner(User::all(), function($user) {
// Do your stuff with $user
}, 'Loading...');
Licence
This package is released under the MIT license.