PHPackages                             codelikesuraj/vanguard-php - 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. [Logging &amp; Monitoring](/categories/logging)
4. /
5. codelikesuraj/vanguard-php

ActiveLibrary[Logging &amp; Monitoring](/categories/logging)

codelikesuraj/vanguard-php
==========================

"A lightweight PHP SDK for capturing and/or sending application errors to the Vanguard dashboard"

v0.1.0(9mo ago)00MITPHPPHP ^8.0

Since Aug 17Pushed 9mo agoCompare

[ Source](https://github.com/codelikesuraj/vanguard-php)[ Packagist](https://packagist.org/packages/codelikesuraj/vanguard-php)[ Docs](http://vanguard.abdulbakisuraj.com)[ RSS](/packages/codelikesuraj-vanguard-php/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependenciesVersions (2)Used By (0)

Vanguard SDK
============

[](#vanguard-sdk)

**Vanguard** is a lightweight PHP SDK for capturing errors and exceptions in your PHP applications and sending them to the **Vanguard Dashboard**. It's designed to be framework-agnostic, with as little external dependencies as possibly, so it can plug into any PHP project.

Features
--------

[](#features)

- Captures uncaught exceptions and PHP runtime errors.
- Normalize exceptions and errors into structured events.
- Fingerprint events for grouping.
- Logs to a local JSON file or send events to the Vanguard Dashboard API

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

[](#installation)

```
composer require codelikesuraj/vanguard
```

Usage
-----

[](#usage)

```
require 'vendor/autoload.php';

use Codelikesuraj\Vanguard\Vanguard;
use Codelikesuraj\Vanguard\Transport\FileTransport;

// log to local file
$transport = new FileTransport(__DIR__ . '/VANGUARD_LOG_FILE'));

/** OR **/

// log to Vanguard dashboard
$transport = new HttpTransport("https://VANGUARD_PROJECT_DSN")

// Initialize vanguard and automatically capture errors and exceptions
Vanguard::init($transport);

// Manually capture and exception
Vanguard::capture(Throwable $e, array $context = [])
    ->transport($transport)   // optional
```

How it works
------------

[](#how-it-works)

1. `Vanguard::init()` registers global handlers:
    - **Errors** via set\_error\_handler()
    - **Exceptions** via set\_exception\_handler()
2. Every captured error and exception is turned into an Event with:
    - Context (custom metadata)
    - Message
    - File path
    - Fingerprint (used for grouping)
    - Line number
    - Type (Exception, Error etc)
    - Stacktrace
    - Timestamp
3. The chosen **Transport** (File/Http) then decides where the event goes.

Example Event JSON
------------------

[](#example-event-json)

```
{
  "context": [],
  "fingerprint": "24bb5912458f9dd1fe4bc1843a17c2c261306fff",
  "message": "strlen(): Argument #1 ($string) must be of type string, array given",
  "file": "/var/www/index.php",
  "line": 12,
  "stacktrace": [
    {"file": "/var/www/index.php", "line": 12, "function": "strlen"}
  ],
  "timestamp": "2025-08-17T20:11:49+01:00",
  "type": "TypeError"
}
```

Roadmap
-------

[](#roadmap)

- Basic Vanguard dashboard - provide API for logging events per project
- SDK for other languages (JS, Go)
- will add others as needed

###  Health Score

24

—

LowBetter than 32% of packages

Maintenance58

Moderate activity, may be stable

Popularity0

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity30

Early-stage or recently created project

 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

Unknown

Total

1

Last Release

274d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/be73767f866d719f762531f652a52997003fe1ed9d77b46ee4da056c8b29923f?d=identicon)[codelikesuraj](/maintainers/codelikesuraj)

---

Top Contributors

[![codelikesuraj](https://avatars.githubusercontent.com/u/70463535?v=4)](https://github.com/codelikesuraj "codelikesuraj (2 commits)")

---

Tags

loggingmonitoringerror-monitoringerror-loggingvanguard

### Embed Badge

![Health badge](/badges/codelikesuraj-vanguard-php/health.svg)

```
[![Health](https://phpackages.com/badges/codelikesuraj-vanguard-php/health.svg)](https://phpackages.com/packages/codelikesuraj-vanguard-php)
```

###  Alternatives

[sentry/sentry

PHP SDK for Sentry (http://sentry.io)

1.9k227.1M273](/packages/sentry-sentry)[sentry/sentry-laravel

Laravel SDK for Sentry (https://sentry.io)

1.3k114.3M154](/packages/sentry-sentry-laravel)[sentry/sdk

This is a meta package of sentry/sentry. We recommend using sentry/sentry directly.

328134.8M151](/packages/sentry-sdk)[rollbar/rollbar

Monitors errors and exceptions and reports them to Rollbar

33723.7M82](/packages/rollbar-rollbar)[datadog/php-datadogstatsd

An extremely simple PHP datadogstatsd client

19024.6M15](/packages/datadog-php-datadogstatsd)[rollbar/rollbar-laravel

Rollbar error monitoring integration for Laravel projects

14110.4M7](/packages/rollbar-rollbar-laravel)

PHPackages © 2026

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