Download the PHP package elsnertechnologies/laravel-health-monitor without Composer

On this page you can find all versions of the php package elsnertechnologies/laravel-health-monitor. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package laravel-health-monitor

Laravel Health Monitor

Check the health of any PHP/Laravel package before you install it.

One artisan command gives you a 0–100 health score built from live Packagist + GitHub data, a Laravel compatibility answer, smart alternative suggestions, JSON output for CI/CD pipelines — and an optional AI verdict.

Features

Perfect for

Requirements

Installation

The service provider is auto-discovered. Optionally publish the config:

Usage

Web dashboard

Once the package is installed, open:

You get a browser dashboard that:

Click Check health on any package (installed or not) for the full report:

Configure it in config/health-monitor.php:

Tip: in production, either disable the dashboard (HEALTH_MONITOR_WEB_ENABLED=false) or add auth middleware — the page reveals your dependency list and audit results.

The views are publishable if you want to restyle them:

Full project audit (packages + code + malware scan)

Click Run project audit on the dashboard (or open /laravel-health-monitor/audit) and the package audits your whole application in four steps:

  1. All installed packages checked for known vulnerabilities — every entry in your composer.lock is checked against the Packagist security-advisory database (batched, one HTTP request per 50 packages) and for abandoned flags.
  2. Direct requirements health-scored — each package you explicitly require gets the full 0–100 health analysis, listed worst-first so you see what needs attention. Capped by health-monitor.audit.max_health_checks (default 25) to respect GitHub's 60 req/hour unauthenticated limit — set HEALTH_MONITOR_GITHUB_TOKEN to raise it.
  3. Code scan for malware indicators — your app/, config/, routes/, public/, storage/app … directories are scanned for:
    • obfuscated eval(base64_decode(...)) / gzinflate / str_rot13 payload chains
    • eval(), assert(), system(), exec() fed by $_GET/$_POST/$_REQUEST input (backdoors/webshells)
    • request input used as a function name, include/require from request input or remote URLs
    • unserialize()/extract() of request input, preg_replace /e, create_function()
    • known webshell filenames (c99, r57, b374k, wso, …), PHP files with double extensions (avatar.jpg.php), PHP dropped in storage/ or the public web root
    • heavy hex obfuscation and suspicious base64 blobs
  4. Project hygieneAPP_DEBUG on outside local, missing APP_KEY, .env or .git exposed in the public web root, missing composer.lock.

Everything is condensed into one 0–100 project score. JSON output for CI: /laravel-health-monitor/audit?format=json; force live data with ?fresh=1.

Tune the scan in config/health-monitor.php:

Note: the code scan is a heuristic indicator scanner, not an antivirus. Findings are leads to review — and a clean result is not a guarantee. If you suspect a real compromise, rotate credentials and redeploy from a known-good source.

JSON output (CI/CD)

--json prints a single JSON document; the exit code is 0 on success and 1 when the package is missing or below --min-score:

GitHub Actions example:

Configuration

All settings are environment-driven — publishing the config file is optional.

Env variable Purpose Default
HEALTH_MONITOR_GITHUB_TOKEN (or GITHUB_TOKEN) Raises GitHub API rate limit from 60 to 5000 req/h none
HEALTH_MONITOR_ANTHROPIC_KEY (or ANTHROPIC_API_KEY) Enables the --ai verdict none
HEALTH_MONITOR_AI_MODEL Claude model for the verdict claude-opus-4-8
HEALTH_MONITOR_CACHE_TTL API response cache in seconds (0 disables) 3600
HEALTH_MONITOR_HTTP_TIMEOUT HTTP timeout in seconds 15

Step-by-step: using the plugin day to day

Step 1 — Before installing any new package

Read the three key lines first:

  1. The score badge (98/100 Active / Safe) — your instant go/no-go signal.
  2. The compatibility answer (✔ YES / ✘ NO → Install vendor/package:x.y.z instead) — tells you the exact version to require.
  3. The recommendation line — a plain-language summary of the verdict.

If all three look good, install it. If compatibility says NO, use the suggested version:

Step 2 — When comparing two packages for the same job

Run the check on both, then compare dimension by dimension:

Also look at the 💡 Alternatives section of each report — it may surface a third option you didn't know about, ranked by real download numbers.

Step 3 — Auditing what you already depend on

Check the direct dependencies from your composer.json:

Anything scoring below 60, abandoned, or carrying security advisories goes on your migration list.

Step 4 — Enforcing quality in CI

Gate new dependencies in your pipeline so low-quality packages never reach main:

Exit code 0 = pass, 1 = below the bar (or package not found) — the build fails automatically.

Step 5 — When you want a second opinion

With an Anthropic API key configured, Claude reads all collected metrics and writes a short verdict naming the strongest signal in favor and the biggest risk.

How to read the scores

The overall score

Score Status What to do
80–100 🟢 Active / Safe Install with confidence.
60–79 🟡 Aging / Caution Usable, but check which dimension is dragging it down before committing.
0–59 🔴 Risky / Avoid Prefer an alternative. If you must use it, pin the version and plan an exit.
any 🔴 Abandoned / Avoid Maintainer gave up. Use the replacement shown, or an alternative.

Diagnosing a low score, dimension by dimension

The bars tell you why a score is low. Each dimension points at a different real-world problem:

Low dimension What it means What to check yourself
🔧 Maintenance No recent releases or commits. Bugs and Laravel upgrades won't be handled. Last release date, open PRs sitting unmerged on GitHub.
👥 Community Few stars/forks/watchers. Fewer people to answer questions or review code. Are there Stack Overflow answers? Active discussions/issues?
📥 Usage Few downloads and dependents. Less battle-tested — edge cases may be yours to find. Is the package new (fine) or old-but-unused (red flag)?
🧱 Stability Pre-1.0, few releases, or very young. API may break between versions. Changelog / upgrade guide quality, semver discipline.
🔒 Security Known advisories, abandoned or archived repo, or no license. The 🛡 Security advisories list in the report — each entry has a CVE link.

Typical patterns:

Reading the compatibility answer

Output Meaning
✔ YES — The latest release (X) supports Laravel N. Just composer require it.
✘ NO … → Install vendor/package:X instead. Latest dropped your Laravel version; require the shown version explicitly.
✘ NO … no release supports Laravel N. The package never supported your Laravel version. Pick an alternative.
~ No explicit Laravel requirement found Framework-agnostic PHP package — it will work with any Laravel version (verify its PHP version requirement instead).

Exit codes (for scripts and CI)

Code Cause
0 Report produced, score at or above --min-score (when given).
1 Package not found, invalid name, network failure, or score below --min-score.

How the score works

Each dimension is scored 0–100 from live data, then combined with these weights:

Dimension Weight Signals
🔧 Maintenance 30% Days since last release, releases in the last year, recent repo pushes, abandoned/archived flags
🔒 Security 20% Known security advisories, abandoned/archived status, license presence
📥 Usage 20% Total + monthly downloads, dependent packages
👥 Community 15% GitHub stars, forks, watchers
🧱 Stability 15% 1.0+ releases, release history depth, package age

Thresholds and weights live in config/health-monitor.php.

Testing

License

MIT — see LICENSE.


All versions of laravel-health-monitor with dependencies

PHP Build Version
Package Version
Requires php Version >=7.2.5
ext-json Version *
illuminate/support Version ^7.0|^8.0|^9.0|^10.0|^11.0|^12.0|^13.0
illuminate/console Version ^7.0|^8.0|^9.0|^10.0|^11.0|^12.0|^13.0
illuminate/http Version ^7.0|^8.0|^9.0|^10.0|^11.0|^12.0|^13.0
guzzlehttp/guzzle Version ^6.5.5|^7.0
composer/semver Version ^1.5|^2.0|^3.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package elsnertechnologies/laravel-health-monitor contains the following files

Loading the files please wait ...