mnapoli/silly

Silly CLI micro-framework based on Symfony Console

Maintainers

Details

github.com/mnapoli/silly

Source

Issues

Fund package maintenance!
mnapoli
Tidelift

Installs: 9 302 152

Dependents: 137

Suggesters: 3

Security: 0

Stars: 917

Watchers: 19

Forks: 50

Open Issues: 4

1.9.1 2024-10-30 10:26 UTC

This package is auto-updated.

Last update: 2024-10-30 12:32:39 UTC


README

Silly CLI micro-framework based on Symfony Console.

Build Status Coverage Status Scrutinizer Code Quality Packagist

Professional support for Silly is available via Tidelift

Installation

$ composer require mnapoli/silly

Usage

Example of a Silly application:

use Symfony\Component\Console\Output\OutputInterface;

$app = new Silly\Application();

$app->command('greet [name] [--yell]', function ($name, $yell, OutputInterface $output) {
    $text = $name ? "Hello, $name" : "Hello";

    if ($yell) {
        $text = strtoupper($text);
    }

    $output->writeln($text);
});

$app->run();

Running the application is the same as running any other Symfony Console application:

$ php application.php greet
Hello
$ php application.php greet john --yell
HELLO JOHN
$ php application.php greet --yell john
HELLO JOHN

Silly\Application extends Symfony\Console\Application and can be used wherever Symfony's Application can.

Documentation

Do more

Silly is just an implementation over the Symfony Console. Read the Symfony documentation to learn everything you can do with it.

Example applications

Interested in seeing examples of Silly applications? Have a look at this short selection:

Contributing

See the CONTRIBUTING file.