PHPackages                             devlib/candybar - 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. devlib/candybar

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

devlib/candybar
===============

Tools to make phpunit tests results easier to understand follow, share and integrate

v0.3(7y ago)110[5 issues](https://github.com/adrian7/candybar/issues)MITPHP

Since Apr 4Pushed 7y ago1 watchersCompare

[ Source](https://github.com/adrian7/candybar)[ Packagist](https://packagist.org/packages/devlib/candybar)[ RSS](/packages/devlib-candybar/feed)WikiDiscussions release Synced 3d ago

READMEChangelog (3)Dependencies (6)Versions (5)Used By (0)

Candybar
========

[](#candybar)

[![release.svg](tests/logs/badges/release.svg)](tests/logs/badges/release.svg) [![coverage.svg](tests/logs/badges/coverage.svg)](tests/logs/badges/coverage.svg) [![builddate.svg](tests/logs/badges/builddate.svg)](tests/logs/badges/builddate.svg) [![license.svg](tests/logs/badges/license.svg)](tests/logs/badges/license.svg)

*Get the candies from your PHPUnit's tests results*

**(!) Warning: this project is under heavy development. Expect breaking changes with every new 0.x release.**

**Check [the roadmap](https://github.com/adrian7/candybar/blob/dev/ROADMAP.md)for upcoming features. Issues/pull requests are welcome.**

### Installation

[](#installation)

```
$ composer require devlib/candybar --dev && vendor/bin/candybar init
```

### Running the bar

[](#running-the-bar)

After installing (init), a folder called `candybar` will show up in your project's root directory.
There you'll find the config.php, styles and themes folders. The `bar` section of the config file is used to add/remove commands supported by candybar and the styles folder is used to lookup styles when running the `coverage:style` command.

To get a list of all available commands run:

```
$ vendor/bin/candybar list
```

To get help for a specific command:

```
$ vendor/bin/candybar help [command]
```

### Available candies (commands)

[](#available-candies-commands)

- `build:badge:date` generates build date badge with the current date/time
- `coverage:style` applies a style to the html coverage presentation
- `coverage:badge` generates badge from clover xml coverage stats
- `license:badge` generates license badge, use arguments to set license and color
- `readme:add-badges` adds badges to the readme file using placeholders

### Examples

[](#examples)

- `vendor/bin/candybar coverage:style default`
- `vendor/bin/candybar coverage:badge badges/coverage.svg --style=plastic`
- `vendor/bin/candybar license:badge badges/license.svg --style=plastic`
- `vendor/bin/candybar readme:add-badges badges --template=README.tpl.md --output=README.md --backup`

### Making your own commands

[](#making-your-own-commands)

###  Health Score

20

—

LowBetter than 14% of packages

Maintenance0

Infrequent updates — may be unmaintained

Popularity7

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity56

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

Every ~86 days

Total

3

Last Release

2790d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/0b9879c3495c26d08d77d10502e41ea39b07d78199ff10fbcfa624934d8b8acd?d=identicon)[adrian7](/maintainers/adrian7)

---

Top Contributors

[![adrian7](https://avatars.githubusercontent.com/u/225180?v=4)](https://github.com/adrian7 "adrian7 (41 commits)")

---

Tags

badgescode-coveragecode-coverage-htmlphpunitphpunit-themesstylesheets

###  Code Quality

Code StylePHP\_CodeSniffer

### Embed Badge

![Health badge](/badges/devlib-candybar/health.svg)

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

###  Alternatives

[brianium/paratest

Parallel testing for PHP

2.5k118.8M754](/packages/brianium-paratest)[codeception/codeception

All-in-one PHP Testing Framework

4.9k86.2M2.9k](/packages/codeception-codeception)[lucatume/wp-browser

A set of Codeception modules to test WordPress projects.

6343.8M153](/packages/lucatume-wp-browser)[ergebnis/phpunit-slow-test-detector

Provides facilities for detecting slow tests in phpunit/phpunit.

1468.1M72](/packages/ergebnis-phpunit-slow-test-detector)[innmind/black-box

Test library

44178.7k93](/packages/innmind-black-box)[oxid-esales/testing-library

OXID eShop testing library

13374.0k10](/packages/oxid-esales-testing-library)

PHPackages © 2026

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