PHP debugging library – send dumps and traces to CodeSeer desktop app

Maintainers

Package info

github.com/shaferllc/codeseer-php

pkg:composer/codeseer/php

Statistics

Installs: 0

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

v1.0.15 2026-02-24 01:35 UTC

This package is auto-updated.

Last update: 2026-02-24 01:35:52 UTC


README

Send dumps and traces from PHP to the CodeSeer desktop app.

Requirements

  • PHP 8.0+
  • CodeSeer desktop app running and listening (default: 127.0.0.1:23523)

Install

In a project (Composer)

composer require codeseer/php

Global (cs everywhere)

To use cs(), dd(), trace(), etc. in all PHP scripts (CLI and web) without adding the package to each project:

curl -sSL https://github.com/shaferllc/codeseer-php/releases/download/v1.0.15/install.sh | bash

Or with Composer:

composer global require codeseer/php
codeseer install

The one-liner downloads the CodeSeer PHAR and runs install (loader to ~/.codeseer/, auto_prepend_file when writable). Add ~/.codeseer/bin to your PATH for codeseer upgrade and codeseer self-update. See global/README.md for details.

Usage

<?php

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

cs('Hello from PHP!');
cs(['a' => 1, 'b' => 2]);
trace();
codeseer_log('Something happened', 'info');

Functions

  • cs(...$vars) – Dump one or more values to CodeSeer (execution continues).
  • ds(...$vars) – Alias for cs().
  • codeseer_dump(...$vars) – Alias for cs().
  • dd(...$vars) – Dump then exit (like Laravel’s dd()).
  • trace(?string $label = null) – Send current stack trace.
  • codeseer_log(string $message, string $level = 'info') – Send a log line.

Configuration (environment)

  • CODESEER_ENABLED=0 – Disable sending (default: enabled).
  • CODESEER_HOST – Host of desktop app (default: 127.0.0.1).
  • CODESEER_PORT – Port (default: 23523).

For more ways to get cs() everywhere (Composer global, manual php.ini, conditional loading), see global/README.md.

Testing

Tests use Pest (PHPUnit). Run tests and enforce 100% coverage:

composer run test           # Run tests
composer run test:coverage  # Run tests with coverage (requires pcov or Xdebug)

CI runs Pint, PHPStan, and Pest with --coverage --min=100. The test:coverage script sets XDEBUG_MODE=coverage so coverage works with Xdebug (e.g. PHP 8.5). Alternatively install the pcov extension.

Framework plugins

  • Laravel: codeseer/laravel (planned)
  • WordPress: codeseer/wordpress (planned)

See PLAN.md for the full roadmap.