andreypostal / cli
A simple and easy to use library with no dependencies for creating pretty and organized CLI apps in PHP. Even has some fun progress bars.
v1.0.0
2024-05-02 10:24 UTC
Requires
- php: >=8.1
README
🧙♂️ Easy CLI for PHP
A simple and easy to use library with no dependencies for creating pretty and organized CLI apps in PHP.
No dependencies, simple and easy to understand. You can create simple CLI tools or complex one and things wont get messy!! 😄
Installation
composer require andreypostal/cli
Basic Usage
$app = new App( appName: 'MyApp', description: 'My app has a cool description', cmd: 'php cmd', params: [], commands: [ new Command( key: 'run', description: 'This action will run soon', service: [ 'handler' => static function(Context $context): void { App::console('It is so easy!!!'); }, ], ), ], ); $app->run($argv);
Docs
Examples
- Basic Handler
- Basic Service
- Required Params Validation
- Boolean Flag
- Progress Bar
- Infinite Progress Bar
- Complete
About
Author
Andrey Postal - andreypostal@gmail.com
License
CLI is licensed under the Apache License 2.0 - see the LICENSE file for details
Acknowledgements
Highly inspired by the Go library urfave/cli