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 1mo 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 68% 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

3806d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/fb11090c176e1fe6734ec82dd9b50a5e88ede538f2c4a7fd287e3320b2af1a28?d=identicon)[vjandrea](/maintainers/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

[anahkiasen/former

A powerful form builder

1.4k1.4M14](/packages/anahkiasen-former)[patricktalmadge/bootstrapper

Twitter Bootstrap markup generator

557407.2k4](/packages/patricktalmadge-bootstrapper)[kylekatarnls/laravel-carbon-2

Carbon 2 adapter for Laravel

631.2M1](/packages/kylekatarnls-laravel-carbon-2)[erlandmuchasaj/laravel-gzip

Gzip your responses.

40129.3k2](/packages/erlandmuchasaj-laravel-gzip)[dcblogdev/laravel-module-generator

Generate Laravel Modules from a template.

7710.1k1](/packages/dcblogdev-laravel-module-generator)[linkxtr/laravel-qrcode

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

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

PHPackages © 2026

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