A PHP library providing request/response objects for CLI applications with Getopt support and help system.
Aura.Cli is a PHP library that provides request and response objects for command-line interface (CLI) applications. It simplifies CLI development by offering tools for parsing command-line arguments, managing standard I/O streams, and generating help documentation, similar to web frameworks but for terminal-based scripts.
PHP developers building command-line tools, scripts, or console applications who need structured argument parsing, formatted output, and help system generation.
Developers choose Aura.Cli for its clean separation of concerns, flexible Getopt support, and POSIX terminal formatting, enabling maintainable CLI code without imposing a rigid framework or base class.
Command-Line Interface tools
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Supports complex definitions for short/long flags, aliases, multi-pass options, and optional/required parameters, as shown in the Getopt examples with arrays like 'foo,f:' and 'g*::'.
Provides independent, composable components like Context, Stdio, and Help without enforcing a command structure, aligning with the library's philosophy for customizable CLI development.
Includes formatter markup for colors, bold, underline, etc., in Stdio output, with a detailed cheat sheet for rich text in compatible terminals.
Requires only PHP 7.2+ with no external libraries, making it lightweight and easy to install via Composer or direct download.
Lacks base command classes or routing mechanisms, forcing developers to write boilerplate code for each command, as evidenced by the manual script example in 'Writing Commands'.
Getopt errors are collected but not automatically thrown, requiring explicit checks with hasErrors() and getErrors(), which can lead to verbose and error-prone code.
Formatter markup is designed for POSIX terminals and may not work on Windows or other platforms without additional configuration or fallbacks.