PHPackages                             mnapoli/silly - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Framework](/categories/framework)
4. /
5. mnapoli/silly

ActiveLibrary[Framework](/categories/framework)

mnapoli/silly
=============

Silly CLI micro-framework based on Symfony Console

1.9.1(1y ago)93110.5M—1%50[4 issues](https://github.com/mnapoli/silly/issues)20MITPHPPHP &gt;=7.4CI failing

Since Feb 12Pushed 1y ago17 watchersCompare

[ Source](https://github.com/mnapoli/silly)[ Packagist](https://packagist.org/packages/mnapoli/silly)[ GitHub Sponsors](https://github.com/mnapoli)[ Fund](https://tidelift.com/funding/github/packagist/mnapoli/silly)[ RSS](/packages/mnapoli-silly/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (10)Dependencies (6)Versions (23)Used By (20)

   currentMenu home  Silly CLI micro-framework based on Symfony Console.

[![Build Status](https://camo.githubusercontent.com/305335aa2d55ad15beac4fa389e50a1602aa346b0f91a04d28cf54daae28a1aa/68747470733a2f2f696d672e736869656c64732e696f2f7472617669732f6d6e61706f6c692f73696c6c792f6d61737465722e7376673f7374796c653d666c61742d737175617265)](https://travis-ci.org/mnapoli/silly)[![Coverage Status](https://camo.githubusercontent.com/e1c40c012d3077980856c2c2fc46465321da4051a4b09b92a7eaa20f11cbfca4/68747470733a2f2f696d672e736869656c64732e696f2f636f766572616c6c732f6d6e61706f6c692f73696c6c792f6d61737465722e7376673f7374796c653d666c61742d737175617265)](https://coveralls.io/r/mnapoli/silly?branch=master)[![Scrutinizer Code Quality](https://camo.githubusercontent.com/ad0508ecc23d781dfa2038abf4d3d6b252a5de815ce82dd82d108f98e4eba599/68747470733a2f2f696d672e736869656c64732e696f2f7363727574696e697a65722f672f6d6e61706f6c692f73696c6c792e7376673f7374796c653d666c61742d737175617265)](https://scrutinizer-ci.com/g/mnapoli/silly/?branch=master)[![Packagist](https://camo.githubusercontent.com/84f67c96a9728f1949fe170f78ced979dce8954a25aece2b0a55c6cbf57987a2/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f6d6e61706f6c692f73696c6c792e7376673f6d61784167653d32353932303030)](https://packagist.org/packages/mnapoli/silly)

Professional support for Silly [is available via Tidelift](https://tidelift.com/subscription/pkg/packagist-mnapoli-silly?utm_source=packagist-mnapoli-silly&utm_medium=referral&utm_campaign=readme)

- [Video introduction in french](https://www.youtube.com/watch?v=aoE1FDN5_8s)

Installation
------------

[](#installation)

```
$ composer require mnapoli/silly
```

Usage
-----

[](#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
-------------

[](#documentation)

- [Command definition](docs/command-definition.md)
- [Command callables](docs/command-callables.md)
- [Console helpers](docs/helpers.md)
- [Dependency injection](docs/dependency-injection.md)
    - [The PHP-DI edition](docs/php-di.md)
    - [The Pimple edition](docs/pimple.md)

Do more
-------

[](#do-more)

Silly is just an implementation over the Symfony Console. Read [the Symfony documentation](http://symfony.com/doc/current/components/console/introduction.html) to learn everything you can do with it.

Example applications
--------------------

[](#example-applications)

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

- [Bref](https://github.com/mnapoli/bref/blob/c11662125d3d6cf3f96ee82c9e6fc60d9bcbbfdd/bref)
- [Laravel Valet](https://github.com/laravel/valet/blob/7ed0280374340b30f1e2698fe85d7db543570f57/cli/valet.php)
- [Blacksmith](https://github.com/mpociot/blacksmith/blob/320e97b9677f9e885d1f478593143f329afb9510/blacksmith)
- [Documentarian](https://github.com/mpociot/documentarian/blob/34189ff3357aa3b013930b471410f135f09792de/documentarian)

Contributing
------------

[](#contributing)

See the [CONTRIBUTING](CONTRIBUTING.md) file.

###  Health Score

59

—

FairBetter than 99% of packages

Maintenance37

Infrequent updates — may be unmaintained

Popularity68

Solid adoption and visibility

Community47

Growing community involvement

Maturity73

Established project with proven stability

 Bus Factor1

Top contributor holds 69.4% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~168 days

Recently: every ~196 days

Total

22

Last Release

565d ago

Major Versions

0.2.0 → 1.0.02015-03-02

PHP version history (3 changes)0.1.0PHP &gt;=5.5

1.6.0PHP &gt;=7.0

1.8.0PHP &gt;=7.4

### Community

Maintainers

![](https://www.gravatar.com/avatar/329a6111724074f5388e95dd41a03ccf3c43f4bfe1ecf27c94c9efc6f7823228?d=identicon)[mnapoli](/maintainers/mnapoli)

---

Top Contributors

[![mnapoli](https://avatars.githubusercontent.com/u/720328?v=4)](https://github.com/mnapoli "mnapoli (120 commits)")[![thecrypticace](https://avatars.githubusercontent.com/u/614993?v=4)](https://github.com/thecrypticace "thecrypticace (16 commits)")[![cjobeili](https://avatars.githubusercontent.com/u/28759371?v=4)](https://github.com/cjobeili "cjobeili (6 commits)")[![andersonamuller](https://avatars.githubusercontent.com/u/1681800?v=4)](https://github.com/andersonamuller "andersonamuller (3 commits)")[![glensc](https://avatars.githubusercontent.com/u/199095?v=4)](https://github.com/glensc "glensc (3 commits)")[![Rarst](https://avatars.githubusercontent.com/u/737584?v=4)](https://github.com/Rarst "Rarst (2 commits)")[![mcaskill](https://avatars.githubusercontent.com/u/29353?v=4)](https://github.com/mcaskill "mcaskill (2 commits)")[![carusogabriel](https://avatars.githubusercontent.com/u/16328050?v=4)](https://github.com/carusogabriel "carusogabriel (2 commits)")[![K-Phoen](https://avatars.githubusercontent.com/u/66958?v=4)](https://github.com/K-Phoen "K-Phoen (1 commits)")[![Alban-io](https://avatars.githubusercontent.com/u/7300483?v=4)](https://github.com/Alban-io "Alban-io (1 commits)")[![makraz](https://avatars.githubusercontent.com/u/19323431?v=4)](https://github.com/makraz "makraz (1 commits)")[![mpociot](https://avatars.githubusercontent.com/u/804684?v=4)](https://github.com/mpociot "mpociot (1 commits)")[![Nyholm](https://avatars.githubusercontent.com/u/1275206?v=4)](https://github.com/Nyholm "Nyholm (1 commits)")[![pavog](https://avatars.githubusercontent.com/u/4786628?v=4)](https://github.com/pavog "pavog (1 commits)")[![peter279k](https://avatars.githubusercontent.com/u/9021747?v=4)](https://github.com/peter279k "peter279k (1 commits)")[![sh6210](https://avatars.githubusercontent.com/u/2899371?v=4)](https://github.com/sh6210 "sh6210 (1 commits)")[![stof](https://avatars.githubusercontent.com/u/439401?v=4)](https://github.com/stof "stof (1 commits)")[![swiffer](https://avatars.githubusercontent.com/u/2990373?v=4)](https://github.com/swiffer "swiffer (1 commits)")[![tentacode](https://avatars.githubusercontent.com/u/550548?v=4)](https://github.com/tentacode "tentacode (1 commits)")[![lalop](https://avatars.githubusercontent.com/u/313117?v=4)](https://github.com/lalop "lalop (1 commits)")

---

Tags

climicro-frameworkphpsymfony-consolecliconsolePSR-11frameworkmicro-frameworksilly

###  Code Quality

TestsPHPUnit

Code StylePHP CS Fixer

### Embed Badge

![Health badge](/badges/mnapoli-silly/health.svg)

```
[![Health](https://phpackages.com/badges/mnapoli-silly/health.svg)](https://phpackages.com/packages/mnapoli-silly)
```

###  Alternatives

[laravel/framework

The Laravel Framework.

34.7k509.9M17.0k](/packages/laravel-framework)[laravel-zero/framework

The Laravel Zero Framework.

3371.4M369](/packages/laravel-zero-framework)[chubbyphp/chubbyphp-framework

A minimal, highly performant middleware PSR-15 microframework built with as little complexity as possible, aimed primarily at those developers who want to understand all the vendors they use.

13544.4k4](/packages/chubbyphp-chubbyphp-framework)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
