nunomaduro/patrol
Patrol is a Laravel package by Nuno Maduro for monitoring your application's health and performance. It provides an elegant dashboard to track slow requests, queries, and exceptions, helping you spot issues before they affect users.
composer update cycles.composer-unused + native composer audit / outdated, and let the results drive the call.composer audit, SBOM generation, or license-policy enforcement.Adopt it when:
Look elsewhere when:
composer-unused + composer audit + a real SBOM tool instead.Practical adoption path: one-sprint spike, dev-dependency only, pinned version, nightly advisory report, hand-verified removal PRs capped at a few packages per week, explicit retire decision at the end.
To executives (30 seconds): We ship Composer packages we don't use and can't justify. That's maintenance cost, security surface, and upgrade friction we pay for every month. Patrol is a free, MIT-licensed developer tool — it adds nothing to production, carries no runtime risk, and takes roughly a day to wire up — that produces a concrete list of what we can safely drop. Expected outcomes: a smaller dependency tree, fewer CVEs to triage, and measurably less work in our next Laravel upgrade. Cost: about one engineer-week including triage. Fully reversible; the tool can be dropped without touching application code.
To engineering (the honest version): Dev-only CLI, no service provider, no config required beyond install. Run it nightly in CI as a non-blocking job and archive the report; do not gate merges. Findings are candidates, not verdicts — static analysis misses string-based container bindings, config-driven class names, and auto-discovery, so every removal needs a reviewer and a passing suite. Pin the version explicitly — this is a single maintainer with 280 stars and zero dependents, and its core function overlaps heavily with native composer audit and composer outdated. Treat it as a reporting convenience with a documented fallback, not a capability acquisition.
Risks to state up front: low community signal (the 7.87 opportunity score is attractive, but the 2.33 overall reflects thin adoption and likely stagnation); false positives in dynamically-resolved code; bus-factor of one; and overlap with native Composer commands creating two sources of truth. Mitigation: advisory-only posture, pinned version, a named internal owner, and a runbook entry naming composer audit as the authoritative fallback. If Patrol surfaces nothing native tooling misses within one or two sprints, retire it — that is a successful outcome, not a failed experiment.
Success metrics: packages removed per quarter, vendor-directory size delta, dependency-tree CVE count, and time-to-complete on the next framework upgrade.
How can I help you explore Laravel packages today?