PHPackages                             ealore/progress - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. ealore/progress

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

ealore/progress
===============

A generator of Bootstrap 3 progress bars based on dates

v1.1.6(10y ago)2501MITPHP

Since Dec 5Pushed 9y ago1 watchersCompare

[ Source](https://github.com/Ealore/Progress)[ Packagist](https://packagist.org/packages/ealore/progress)[ Docs](https://github.com/Ealore/Progress)[ RSS](/packages/ealore-progress/feed)WikiDiscussions master Synced 3w ago

READMEChangelogDependencies (2)Versions (10)Used By (0)

[![Build Status](https://camo.githubusercontent.com/64afe95a368113c9c6e9776811ca7ef05f0b2193eede85826822798c3e375f66/68747470733a2f2f7472617669732d63692e6f72672f45616c6f72652f50726f67726573732e737667)](https://travis-ci.org/Ealore/Progress)

Progress
========

[](#progress)

A generator of Bootstrap 3 progress bars based on dates

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

[](#installation)

```
composer require ealore\progress

```

If you use Laravel 5 you may add the service provider to config/app.php providers array

```
Ealore\Progress\ProgressServiceProvider::class,

```

Usage
-----

[](#usage)

```
$progress = new Ealore\Progress('2013-01-01','2013-12-31','P30D');
echo $progress->render(); // generate the html for the progress bar, based on the dates you provided.

```

The HTML generated looks like this:

```

    31.24%
    2.81%
    65.95%

```

You may use also setters:

```
$progress = new Ealore\Progress\Progress;
$progress->setStartDate('2013-01-01');
$progress->setWarningThresholdAsDate('2013-12-01');
$progress->setEndDate('2013-12-31');

echo $progress->render();

```

### Threshold of the 'warning' section

[](#threshold-of-the-warning-section)

You may set a threshold to mark the start of the 'warning' section in two ways:

- as a date: `$progress->setWarningThresholdAsDate('2014-12-01');`
- as a string, following PHP's *DateInterval* format: `$progress->setWarningThresholdAsString('P20D');` // 20 days
- as a percentage represented by a float value: `$progress->setWarningThresholdAsString(25.0);` // 25%

### Default values

[](#default-values)

When start and end are not set, the default values used are defined from the initialization timestamp: **one month** before for the start and **next month** for the end. By default the 'warning' section starts one month before the end. If start and end are not set this means that the 'warning' starts at the moment of initialization. The threshold may be removed completely by setting it to zero:

```
$progress->setWarningThresholdAsString('P0D');

```

Take a look at the examples below, the last one shows the effect of setting the warning interval to zero.

Examples
--------

[](#examples)

[![Screenshot](/../screenshots/screenshots/screenshot.png?raw=true "Screenshot")](/../screenshots/screenshots/screenshot.png?raw=true)

Contribution
------------

[](#contribution)

PRs are welcome

Roadmap
-------

[](#roadmap)

- Create a more flexible setWarningThreshold method that accepts mixed parameters
- Method documentation
- Refactor tests

###  Health Score

31

—

LowBetter than 66% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity12

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity69

Established project with proven stability

 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 ~0 days

Total

8

Last Release

3851d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/1639757?v=4)[Andrea Bergamasco](/maintainers/vjandrea)[@vjandrea](https://github.com/vjandrea)

---

Top Contributors

[![vjandrea](https://avatars.githubusercontent.com/u/1639757?v=4)](https://github.com/vjandrea "vjandrea (22 commits)")

---

Tags

laravelgeneratorcarbonbootstrap

### Embed Badge

![Health badge](/badges/ealore-progress/health.svg)

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

###  Alternatives

[laravel/horizon

Dashboard and code-driven configuration for Laravel queues.

4.1k91.3M279](/packages/laravel-horizon)[spatie/laravel-responsecache

Speed up a Laravel application by caching the entire response

2.8k8.7M64](/packages/spatie-laravel-responsecache)[psalm/plugin-laravel

Psalm plugin for Laravel

3345.1M337](/packages/psalm-plugin-laravel)[erlandmuchasaj/laravel-gzip

Gzip your responses.

40140.4k2](/packages/erlandmuchasaj-laravel-gzip)[sebastienheyd/boilerplate

Laravel Boilerplate based on AdminLTE 3 with blade components, user management, roles, permissions, logs viewer, ...

29419.5k3](/packages/sebastienheyd-boilerplate)[linkxtr/laravel-qrcode

A clean, modern, and easy-to-use QR code generator for Laravel

3614.9k](/packages/linkxtr-laravel-qrcode)

PHPackages © 2026

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