Skip to content

minicli/minicli

 
 

Repository files navigation

logo

Latest Stable Version Total Downloads License Documentation Status

miniCLI

Minimalist, dependency-free framework for building CLI-centric PHP applications


miniCLI is a minimalist, dependency-free framework for building CLI-centric PHP applications. It provides a structured way to organize your commands, as well as various helpers to facilitate working with command arguments, obtaining input from users, and printing colored output.

Quick links:

Dependency-free: What Does it Mean

What does it mean to be dependency-free? It means that you can build a working CLI PHP application without dozens of nested user-land dependencies. The basic minicli/minicli package has only testing dependencies, and a single system requirement:

  • PHP >= 8.4

It gives you a lot of room to choose your own dependencies.

Getting Started

To create a new project using our miniCLI template, run:

composer create-project --prefer-dist minicli/app myapp

This will generate a minimal application with everything you need to create a CLI application with miniCLI.

You can now run the bootstrapped application with:

./minicli help

The documentation contains more detailed information about creating commands and the full features provided by miniCLI.

Contributing

Contributions are very welcome! You can contribute with code, documentation, filing issues... Please refer to our contributing doc for more information on the contribution process and what we expect from you.

Running the Test Suite

miniCLI uses Pest PHP as testing framework. Once you have all dependencies installed via composer install, you can run the complete test suite with:

composer test

About

A minimal framework for command-line applications in PHP. Join our Discord: https://discord.gg/hY5UNC4XPf

Topics

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Packages

No packages published

Contributors 26

Languages