phpexperts/console-painter

A quick and easy library for colorizing and stylizing ANSI consoles.

v1.1.0 2021-03-31 13:04 UTC

This package is auto-updated.

Last update: 2024-10-29 05:28:42 UTC


README

TravisCI Test Coverage

ConsolePainter is a PHP Experts, Inc., Project that enables easy color and stylization of ANSI terminals.

It strives to conform to the standard ANSI terminal colors as documented at https://misc.flogisoft.com/bash/tip_colors_and_formatting

image

Installation

Via Composer

composer require phpexperts/console-painter

Usage

use PHPExperts\ConsolePainter\ConsolePainter;

$p = new ConsolePainter();

// This is *REALLY* emphasized!
echo "\t" . $p->italics('This is ') .
    $p->bold('*') . $p->bold()->underlined()->yellow('*REALLY*') .
    $p->bold()->onLightBlue(' emphasized*') . '!' . "\n";

echo $p->yellow('Press ')->bolder()->red('ENTER')->yellow(' to continue...') . "\n";

echo "\n";

// Draw the Red, White and Blue:
echo $p->bolder()->red('Red')->dim(', ')->italics()->white('White ')->dim('and ')->blue('Blue') . "\n";

This will output:

image

You can even make really complex ASCII art with it. Here is a derivation of the European Union logo:

image

Demos

Basic styles:

image

Complex text styling

image

ASCII Art

image

Use cases

ConsolePainter: Stylization
✔ Can bold text
✔ Can italicize text
✔ Can underline text
✔ Can dim text
✔ Can blink text
✔ Can hide text
✔ Can invert the text style
✔ All combinations of stylizations work

ConsolePainter: Foreground Colors
✔ Can make the text the default color
✔ Can make the text black
✔ Can make the text dark grey
✔ Can make the text blue
✔ Can make the text light blue
✔ Can make the text green
✔ Can make the text light green
✔ Can make the text cyan
✔ Can make the text light cyan
✔ Can make the text red
✔ Can make the text light red
✔ Can make the text purple
✔ Can make the text light purple
✔ Can make the text brown
✔ Can make the text yellow
✔ Can make the text light gray
✔ Can make the text white
✔ Can chain two or more colored words together
✔ Can chain two or more colored words together with a background
✔ Can make the european union logo

Testing

phpunit --testdox

Contributors

Theodore R. Smith theodore@phpexperts.pro
GPG Fingerprint: 4BF8 2613 1C34 87AC D28F 2AD8 EB24 A91D D612 5690
CEO: PHP Experts, Inc.

License

MIT license. Please see the license file for more information.