PHPackages                             flobbos/laravel-doctor - 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. flobbos/laravel-doctor

ActiveLibrary

flobbos/laravel-doctor
======================

A lightweight Laravel health score for CI and production readiness.

v0.2.0(1mo ago)013↓75%MITPHPPHP ^8.2CI passing

Since Jul 16Pushed 3w agoCompare

[ Source](https://github.com/Flobbos/laravel-doctor)[ Packagist](https://packagist.org/packages/flobbos/laravel-doctor)[ RSS](/packages/flobbos-laravel-doctor/feed)WikiDiscussions main Synced 1w ago

READMEChangelog (3)Dependencies (15)Versions (4)Used By (0)

Laravel Doctor
==============

[](#laravel-doctor)

A lightweight Laravel health score for CI and production readiness.

Looking for a comprehensive diagnostics and auto-repair suite? Use the official [Laravel Doctor](https://github.com/laravel/doctor). This package intentionally stays focused on a compact, weighted score that is easy to read, share, and enforce in CI.

[![Laravel Doctor terminal report](docs/terminal.png)](docs/terminal.png)

```
Laravel Doctor

  ✓ APP_DEBUG    Disabled.
  ✓ APP_ENV      Set to production.
  ✓ Queue        Using the redis connection.
  ✓ Cache        Using the redis store.
  ✓ Config cache Configuration is cached.
  ! Route cache  Routes are not cached.
  ✓ OPcache      Enabled.
  ✓ Database     Connected via mysql.
  ✓ Migrations   No pending migrations.

  Score  96/100

```

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

[](#requirements)

- PHP 8.2+
- Laravel 11, 12, or 13

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

[](#installation)

```
composer require flobbos/laravel-doctor --dev
```

Laravel discovers the service provider automatically. Run the report with:

```
php artisan doctor
```

Use it in CI or deployments:

```
php artisan doctor --ci
php artisan doctor --minimum=80
php artisan doctor --json
```

`--ci` returns a non-zero exit code when a check fails. `--minimum` enforces a score from 0 to 100. `--json` returns the same report in a machine-readable format.

Publish the configuration when you want to customize the checks:

```
php artisan vendor:publish --tag=doctor-config
```

Custom checks
-------------

[](#custom-checks)

Implement `LaravelDoctor\Contracts\Check` and add the class to `config/doctor.php`:

```
use LaravelDoctor\Contracts\Check;
use LaravelDoctor\ValueObjects\CheckResult;

final class DatabaseCheck implements Check
{
    public function run(): CheckResult
    {
        return CheckResult::pass('Database', 'Connection is healthy.');
    }
}
```

The container resolves every check, so constructor injection works as expected. Results can be `pass`, `warning`, or `fail`. Passes earn full score, warnings half score, and failures no score.

Scoring weights
---------------

[](#scoring-weights)

Published configuration includes a `weights` array keyed by check class. Increase a value when that check should contribute more heavily to the score:

```
'weights' => [
    AppDebugCheck::class => 2,
    DatabaseConnectionCheck::class => 3,
],
```

Development
-----------

[](#development)

```
composer install
composer test
composer format
```

License
-------

[](#license)

MIT

###  Health Score

37

—

LowBetter than 81% of packages

Maintenance93

Actively maintained with recent releases

Popularity7

Limited adoption so far

Community2

Small or concentrated contributor base

Maturity38

Early-stage or recently created project

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

3

Last Release

44d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/74704c23d1a3ea66e1ddd18de4e90635ea4a2c28838e72ad49ba947694f7988e?d=identicon)[Flobbos](/maintainers/Flobbos)

---

Tags

laravelhealthartisandiagnostics

###  Code Quality

TestsPest

Code StyleLaravel Pint

### Embed Badge

![Health badge](/badges/flobbos-laravel-doctor/health.svg)

```
[![Health](https://phpackages.com/badges/flobbos-laravel-doctor/health.svg)](https://phpackages.com/packages/flobbos-laravel-doctor)
```

###  Alternatives

[laravel/ai

The official AI SDK for Laravel.

1.1k6.4M360](/packages/laravel-ai)[psalm/plugin-laravel

Psalm plugin for Laravel

3365.5M359](/packages/psalm-plugin-laravel)[illuminate/queue

The Illuminate Queue package.

20433.5M1.9k](/packages/illuminate-queue)[spatie/laravel-health

Monitor the health of a Laravel application

89313.5M195](/packages/spatie-laravel-health)[laravel/sail

Docker files for running a basic Laravel application.

1.9k220.0M1.5k](/packages/laravel-sail)[laravel/cashier

Laravel Cashier provides an expressive, fluent interface to Stripe's subscription billing services.

2.5k31.8M166](/packages/laravel-cashier)

PHPackages © 2026

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