alecrabbit / php-console-spinner
Extremely flexible spinner for [async] php cli applications
Installs: 7 812
Dependents: 4
Suggesters: 0
Security: 0
Stars: 241
Watchers: 4
Forks: 15
Open Issues: 5
Requires
- php: >=8.2
- psr/container: ^2.0
Requires (Dev)
Suggests
- ext-mbstring: For multibyte Unicode string functionality.
- ext-pcntl: For signal handling support.
- react/event-loop: For ReactPHP event-loop support.
- revolt/event-loop: For Revolt event-loop support.
- dev-master
- 1.x-dev
- 1.0.0-ALPHA.7+BUILD.0
- 1.0.0-ALPHA.6+BUILD.0
- 1.0.0-ALPHA.5+BUILD.0
- 0.55.x-dev
- 0.55.0
- dev-di-plugin
- dev-develop
- dev-prepare-next
- dev-dependabot/composer/phpunit/phpunit-10.5.7
- dev-dependabot/composer/fakerphp/faker-1.23.1
- dev-dependabot/composer/symfony/console-6.4.2
- dev-dependabot/composer/symfony/var-dumper-7.0.2
- dev-dependabot/composer/phpunit/php-code-coverage-10.1.11
This package is auto-updated.
Last update: 2024-11-08 13:36:07 UTC
README
Spinner - your task is running
🇺🇦 🏵️ PHP Console Spinner
Old version
0.55.0
is available in branch 0.55.x
New version 1.0.0
- ‼️ ATTENTION ‼️ Documentation is a bit clumsy at the moment and CAN BE MISLEADING
- WIP
- ‼️ API is subject to change until
1.0.0-BETA.0
- is intended to be used with event loop (see limitations)
Installation
composer require alecrabbit/php-console-spinner
Quick start (asynchronous)
use AlecRabbit\Spinner\Facade; // ... $spinner = Facade::createSpinner(); // that's basically it :)
Fully working examples can be found in example directory
For more information see Usage
Why?
Main purpose of this library is to provide a simple way to show spinner in console applications (mainly long-running ones). Spinner could be an indicator of running task. For more information see Features and Examples.
alecrabbit/php-console-spinner-extras library provides additional components to extend functionality:
- show progress of running task
- messages of some sort, like status messages
- additional spinners
Features
See Features and limitations for more details
"Zero" dependencies
"Zero" dependencies mode means that the library does not require any additional dependencies to work. The only exception
is psr/container
. That's why zero is in quotes.
"require": { "php": ">=8.2", "psr/container": "^2.0" },
Links
- Inspired by sindresorhus/cli-spinners