PHPackages                             yukabuki/pest-plugin-console - 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. [Testing &amp; Quality](/categories/testing)
4. /
5. yukabuki/pest-plugin-console

ActiveLibrary[Testing &amp; Quality](/categories/testing)

yukabuki/pest-plugin-console
============================

A Pest 4 plugin that enhances test output using Symfony Console and Termwind, with multi-language support.

1.0.2(2mo ago)018↓100%MITPHPPHP ^8.3CI failing

Since Mar 2Pushed 2mo agoCompare

[ Source](https://github.com/yukabuki/pest-plugin-console)[ Packagist](https://packagist.org/packages/yukabuki/pest-plugin-console)[ RSS](/packages/yukabuki-pest-plugin-console/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (1)Dependencies (6)Versions (2)Used By (0)

Pest Plugin Console
===================

[](#pest-plugin-console)

A [Pest 4](https://pestphp.com) plugin that enhances test output using [Symfony Console](https://symfony.com/doc/current/components/console.html), [Termwind](https://github.com/nunomaduro/termwind), and [Symfony Translation](https://symfony.com/doc/current/translation.html).

Features
--------

[](#features)

- **Real-time output** — test results stream to the terminal as they run, with a progress bar
- **Rich colours** — PASS / FAIL / WARN badges and coloured summary table
- **Multi-language support** — English and French built-in, simple API to add your own locale
- **Zero-config opt-out** — pass `--no-console` to fall back to the original Pest output

Requirements
------------

[](#requirements)

- PHP `^8.3`
- Pest `^4.0`

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

[](#installation)

```
composer require yukabuki/pest-plugin-console
```

The plugin is auto-discovered by Pest — no extra configuration needed.

Usage
-----

[](#usage)

### Default (enhanced output)

[](#default-enhanced-output)

```
./vendor/bin/pest
```

### Opt out — original Pest output

[](#opt-out--original-pest-output)

```
./vendor/bin/pest --no-console
```

### Change the display language

[](#change-the-display-language)

Pass `--locale=XX` to switch language for that run:

```
./vendor/bin/pest --locale=fr
```

Built-in locales: `en` (default), `fr`.

### Add your own translation

[](#add-your-own-translation)

**1 — Create a translation file** that returns an associative array:

```
// lang/de/messages.php
return [
    'section.tests'    => 'TESTS',
    'section.fail'     => 'FEHLER',
    'section.report'   => 'BERICHT',

    'badge.pass'       => 'PASS',
    'badge.fail'       => 'FAIL',
    'badge.warn'       => 'WARN',

    'table.passed'     => 'Bestanden',
    'table.failed'     => 'Fehlgeschlagen',
    'table.skipped'    => 'Übersprungen',
    'table.total'      => 'Gesamt',
    'table.assertions' => 'Assertions',
    'table.duration'   => 'Dauer',
    'table.avg'        => 'Ø',
];
```

**2 — Register it** in your `tests/Pest.php` bootstrap file:

```
// tests/Pest.php
use Yukabuki\PestPluginConsole\Translations\TranslationManager;

TranslationManager::instance()->addResourcePath(__DIR__.'/../lang/de/messages.php', 'de');
```

**3 — Run with the locale flag:**

```
./vendor/bin/pest --locale=de
```

### Available translation keys

[](#available-translation-keys)

KeyDescriptionDefault (EN)`section.tests`Streaming section title`TESTS``section.fail`Failure details section title`FAIL``section.report`Summary table section title`REPORT``badge.pass`Badge when all tests in a class pass`PASS``badge.fail`Badge when at least one test fails`FAIL``badge.warn`Badge when tests are skipped`WARN``table.passed`Summary table column`Passed``table.failed`Summary table column`Failed``table.skipped`Summary table column`Skipped``table.total`Summary table column`Total``table.assertions`Summary table column`Assertions``table.duration`Summary table column`Duration``table.avg`Summary table column`Avg`### Debug — slow mode

[](#debug--slow-mode)

Add a 500 ms delay between each test to inspect real-time output:

```
./vendor/bin/pest --slow
```

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

[](#contributing)

Contributions are welcome. Please open an issue or submit a pull request on [GitHub](https://github.com/yukabuki/pest-plugin-console).

License
-------

[](#license)

This package is open-sourced software licensed under the [MIT license](LICENSE.md).

###  Health Score

40

—

FairBetter than 88% of packages

Maintenance86

Actively maintained with recent releases

Popularity9

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity48

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% 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

Unknown

Total

1

Last Release

69d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/842c3d2629189cf32adcab5996bf95bbf0567e55a4d083df1b498485dd7e1240?d=identicon)[yukabuki](/maintainers/yukabuki)

---

Top Contributors

[![yukabuki](https://avatars.githubusercontent.com/u/106072307?v=4)](https://github.com/yukabuki "yukabuki (18 commits)")

---

Tags

phppluginconsolesymfonypestoutputtermwind

### Embed Badge

![Health badge](/badges/yukabuki-pest-plugin-console/health.svg)

```
[![Health](https://phpackages.com/badges/yukabuki-pest-plugin-console/health.svg)](https://phpackages.com/packages/yukabuki-pest-plugin-console)
```

###  Alternatives

[behat/behat

Scenario-oriented BDD framework for PHP

4.0k96.8M1.9k](/packages/behat-behat)[defstudio/pest-plugin-laravel-expectations

A plugin to add laravel tailored expectations to Pest

98548.9k4](/packages/defstudio-pest-plugin-laravel-expectations)[matthiasnoback/symfony-console-form

Use Symfony forms for Console command input

368264.8k8](/packages/matthiasnoback-symfony-console-form)[spatie/pest-plugin-route-testing

Make sure all routes in your Laravel app are ok

13753.8k](/packages/spatie-pest-plugin-route-testing)[jonpurvis/lawman

A PestPHP Plugin to help with architecture testing SaloonPHP integrations

4027.7k8](/packages/jonpurvis-lawman)

PHPackages © 2026

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