# php-debugbar/php-debugbar

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/php-debugbar-php-debugbar).**

4,388 stars · 424 forks · PHP · MIT

## Links

- GitHub: https://github.com/php-debugbar/php-debugbar
- Homepage: https://php-debugbar.com
- awesome-repositories: https://awesome-repositories.com/repository/php-debugbar-php-debugbar.md

## Description

This project is a PHP debugging toolbar and runtime inspector that provides a browser-based interface for monitoring system metrics, memory usage, and execution time during web development. It functions as an application performance monitor and diagnostic tool, capturing real-time data and application state to visualize the PHP execution lifecycle.

The tool distinguishes itself through its ability to persist debug data across multiple requests, allowing for request history tracking and the archival of previous sessions. It supports the inspection of AJAX requests and manages data persistence during redirects to ensure diagnostic information is available across asynchronous and sequential page loads.

The system covers broad observability capabilities including automated runtime metric collection, custom message logging, and the rendering of complex variables as interactive HTML dumps. It utilizes a modular architecture with collectors for data aggregation, driver-based HTTP abstraction, and an interface-driven storage system for managing how debug data is written and retrieved.

The toolbar is integrated into web pages via late-binding asset injection of JavaScript and HTML.

## Tags

### Development Tools & Productivity

- [PHP Application Debuggers](https://awesome-repositories.com/f/development-tools-productivity/php-application-debuggers.md) — Provides a browser-based interface for monitoring real-time system metrics and application state during the development process.
- [Browser Debugging Toolbars](https://awesome-repositories.com/f/development-tools-productivity/web-development-tooling/browser-debugging-toolbars.md) — Implements a browser-based diagnostic toolbar for inspecting AJAX requests and application state.
- [PHP Runtime Data Collectors](https://awesome-repositories.com/f/development-tools-productivity/custom-debug-collectors/php-runtime-data-collectors.md) — Captures and stores runtime data such as logs and variables for real-time review in a browser-based interface.
- [Runtime Variable Inspectors](https://awesome-repositories.com/f/development-tools-productivity/php-variable-inspectors/runtime-variable-inspectors.md) — Provides a comprehensive system for collecting and persisting PHP environment data and runtime variables across requests.
- [Framework Debugging Toolbars](https://awesome-repositories.com/f/development-tools-productivity/state-debugging-tools/framework-debugging-toolbars.md) — Ships a browser-integrated toolbar that captures and displays real-time PHP application metrics, memory usage, and execution time.
- [AJAX Debug Data Polling](https://awesome-repositories.com/f/development-tools-productivity/ajax-debug-data-polling.md) — Retrieves debug information for AJAX requests by fetching stored data via a dedicated server-side handler.

### Data & Databases

- [Data Persistence and Storage](https://awesome-repositories.com/f/data-databases/data-engineering-infrastructure/data-persistence-storage.md) — Saves collected application data to external storage, such as files or databases, for analysis across multiple requests. ([source](https://php-debugbar.com/docs/storage/))
- [Cross-Request Debug Persistence](https://awesome-repositories.com/f/data-databases/data-engineering-infrastructure/data-persistence-storage/data-persistence-management/cross-request-debug-persistence.md) — Stores collected debug data in a session or storage mechanism to be displayed after a redirect. ([source](https://php-debugbar.com/docs/ajax-and-stack/))
- [Debug Session Managers](https://awesome-repositories.com/f/data-databases/dynamic-data-set-managers/debug-session-managers.md) — Stores and switches between different sets of debugging data to toggle the viewed context. ([source](https://php-debugbar.com/docs/javascript-bar/))
- [Debug History Retrievers](https://awesome-repositories.com/f/data-databases/grpc-historical-data-retrieval/debug-history-retrievers.md) — Opens and displays previously stored sets of collected application data via a dedicated URL handler. ([source](https://php-debugbar.com/docs/openhandler/))

### Programming Languages & Runtimes

- [Runtime Performance Profiling](https://awesome-repositories.com/f/programming-languages-runtimes/node-js-debuggers/runtime-performance-profiling.md) — Tracks memory usage, execution time, and database queries to identify performance bottlenecks in a PHP environment.

### System Administration & Monitoring

- [Runtime State Visualizers](https://awesome-repositories.com/f/system-administration-monitoring/application-performance-monitoring/application-performance-monitoring/real-time-application-performance-monitors/runtime-state-visualizers.md) — Displays real-time system information and application data in a browser-based bar for development. ([source](https://cdn.jsdelivr.net/gh/php-debugbar/php-debugbar@master/README.md))
- [Debug Data Visualizers](https://awesome-repositories.com/f/system-administration-monitoring/debug-data-visualizers.md) — Renders a browser-based interface showing real-time system information and request metrics. ([source](http://php-debugbar.com/))
- [Custom Metric Collectors](https://awesome-repositories.com/f/system-administration-monitoring/global-metric-registries/custom-metric-collectors.md) — Enables the creation of custom collectors to capture specific runtime metrics and define associated interface widgets. ([source](https://php-debugbar.com/docs/data-collectors/))
- [System Metrics Collection](https://awesome-repositories.com/f/system-administration-monitoring/logging/system-metrics-collection.md) — Collects native system-level performance metrics, database queries, and memory usage. ([source](http://php-debugbar.com/))
- [Metric Collection](https://awesome-repositories.com/f/system-administration-monitoring/metric-collection.md) — Gathers quantitative performance data including memory usage and execution time. ([source](https://cdn.jsdelivr.net/gh/php-debugbar/php-debugbar@master/README.md))
- [Request History Archives](https://awesome-repositories.com/f/system-administration-monitoring/request-history-archives.md) — Saves and retrieves data from previous requests to compare performance or debug recurring issues across sessions.
- [Application Performance Monitoring](https://awesome-repositories.com/f/system-administration-monitoring/application-performance-monitoring.md) — Provides a development tool for visualizing system metrics, database queries, and request data during the PHP execution lifecycle.
- [Custom Debug Logging](https://awesome-repositories.com/f/system-administration-monitoring/custom-debug-logging.md) — Enables adding manual text messages to the debug interface to track application flow and state changes. ([source](https://cdn.jsdelivr.net/gh/php-debugbar/php-debugbar@master/README.md))
- [Application Diagnostics](https://awesome-repositories.com/f/system-administration-monitoring/diagnostic-tools/application-diagnostics.md) — Visualizes complex variables and application state through interactive HTML dumps and custom data collectors.
- [Observability Data Aggregators](https://awesome-repositories.com/f/system-administration-monitoring/monitoring-and-observability/cross-account-observability-aggregators/observability-data-filters/observability-data-aggregators.md) — Aggregates real-time system and application metrics via modular collectors for unified display. ([source](https://php-debugbar.com/docs/data-collectors/))

### User Interface & Experience

- [Asset Injection](https://awesome-repositories.com/f/user-interface-experience/site-appearance-customizations/asset-injection.md) — Injects JavaScript and HTML into the final page output to render the debug toolbar without modifying application templates.
- [Debug Widget Mappings](https://awesome-repositories.com/f/user-interface-experience/debug-widget-mappings.md) — Links collected data sets to specific browser interface components through a configurable mapping of tabs and icons.
- [Interactive Variable Dumps](https://awesome-repositories.com/f/user-interface-experience/interactive-variable-dumps.md) — Converts complex variables into interactive, searchable HTML dumps with configurable depth. ([source](https://php-debugbar.com/docs/data-formatter/))

### Networking & Communication

- [HTTP Session and Header Abstractions](https://awesome-repositories.com/f/networking-communication/network-infrastructure-routing/network-infrastructure-configuration/network-management/http-interaction-utilities/http-session-and-header-abstractions.md) — Provides a driver interface to manage sessions and headers across different environments, removing reliance on native language mechanisms. ([source](https://php-debugbar.com/docs/http-drivers/))

### Operating Systems & Systems Programming

- [Custom Storage Handlers](https://awesome-repositories.com/f/operating-systems-systems-programming/file-i-o-management/i-o-polling/file-and-console-i-o/custom-storage-handlers.md) — Supports implementing custom storage handlers through a defined interface to control how debug data is written and retrieved. ([source](https://php-debugbar.com/docs/storage/))

### Software Engineering & Architecture

- [Driver-Based Service Abstractions](https://awesome-repositories.com/f/software-engineering-architecture/driver-based-service-abstractions.md) — Employs a driver interface to decouple HTTP header and session management from the native PHP global state.
- [Request-to-Debug-Data Mappings](https://awesome-repositories.com/f/software-engineering-architecture/request-to-debug-data-mappings.md) — Assigns unique lexically ordered identifiers to requests to map stored debug data to specific browser sessions.
- [Storage Abstractions](https://awesome-repositories.com/f/software-engineering-architecture/storage-abstractions.md) — Defines a common storage interface to decouple debug data persistence from the underlying file system or database.

### Web Development

- [AJAX Debug Data Transport](https://awesome-repositories.com/f/web-development/ajax-debug-data-transport.md) — Sends debug information via headers or storage handlers to be displayed during asynchronous requests. ([source](https://php-debugbar.com/docs/ajax-and-stack/))
- [AJAX Request Diagnostics](https://awesome-repositories.com/f/web-development/ajax-request-diagnostics.md) — Captures and displays debugging information for asynchronous requests to ensure background processes function. ([source](http://php-debugbar.com/))
