Skip to content

Что такое ADP?

ADP (Application Development Panel) — это фреймворк-независимая панель отладки и разработки для PHP-приложений. Можно представить это как универсальную «панель разработчика», работающую с любым PHP-фреймворком.

Проблема

У каждого PHP-фреймворка свои инструменты отладки:

  • У Symfony есть Web Profiler
  • У Laravel есть Telescope
  • У Yii есть Debug Extension

Но что если вы работаете с несколькими фреймворками? Или хотите единые инструменты для всех проектов? Тут на помощь приходит ADP.

Решение

ADP предоставляет единый, унифицированный опыт отладки, работающий поверх PSR-стандартов:

  • PSR-3 (Logger) — Перехват сообщений лога
  • PSR-7 (HTTP Messages) — Инспекция запросов и ответов
  • PSR-14 (Event Dispatcher) — Отслеживание событий
  • PSR-15 (HTTP Handlers) — Мониторинг цепочки middleware
  • PSR-11 (Container) — Инспекция внедрения зависимостей

Ключевые возможности

Коллекторы

ADP поставляется с коллекторами для типичных сценариев отладки:

КоллекторЧто собирает
LogCollectorAppDevPanel\Kernel\Collector\LogCollectorCollects Log data during application lifecycle.Kernel · class · implements SummaryCollectorInterfaceСообщения PSR-3 логгера
EventCollectorAppDevPanel\Kernel\Collector\EventCollectorCollects Event data during application lifecycle.final Kernel · class · implements SummaryCollectorInterfaceСобытия PSR-14
HttpClientCollectorAppDevPanel\Kernel\Collector\HttpClientCollectorCollects Http Client data during application lifecycle.final Kernel · class · implements SummaryCollectorInterfaceИсходящие HTTP-запросы
DatabaseCollectorAppDevPanel\Kernel\Collector\DatabaseCollectorCaptures SQL queries and transactions from the application.final Kernel · class · implements SummaryCollectorInterfaceSQL-запросы и их тайминг
ExceptionCollectorAppDevPanel\Kernel\Collector\ExceptionCollectorCollects Exception data during application lifecycle.final Kernel · class · implements SummaryCollectorInterfaceПойманные и непойманные исключения
MiddlewareCollectorAppDevPanel\Kernel\Collector\MiddlewareCollectorCaptures HTTP middleware stack execution data.final Kernel · class · implements SummaryCollectorInterfaceВыполнение PSR-15 middleware
ServiceCollectorAppDevPanel\Kernel\Collector\ServiceCollectorCollects Service data during application lifecycle.final Kernel · class · implements SummaryCollectorInterfaceРазрешение зависимостей из DI-контейнера
AssetBundleCollectorAppDevPanel\Kernel\Collector\AssetBundleCollectorCaptures registered asset bundles from the application.final Kernel · class · implements SummaryCollectorInterfaceФронтенд-ассеты
RouterCollectorAppDevPanel\Kernel\Collector\RouterCollectorCaptures HTTP routing data: matched route, match timing, route tree.final Kernel · class · implements SummaryCollectorInterfaceСопоставление маршрутов и параметры

Обновления в реальном времени

Панель использует Server-Sent Events (SSE) для push-обновлений в браузер. Обновлять страницу не нужно.

AI-интеграция

ADP включает MCP-сервер (Model Context Protocol), который предоставляет данные отладки AI-ассистентам, таким как Claude. Попросите AI проанализировать ошибки, предложить исправления или объяснить сложные потоки запросов.

Поддержка фреймворков

ФреймворкСтатус адаптера
Symfony 7Стабильный
Yii 2Стабильный
Yii 3Стабильный
Laravel 12Стабильный

Философия

  • Фреймворк-независимость — Работает с любым PSR-совместимым фреймворком
  • Без конфигурации — Установите адаптер, и всё заработает
  • Ненавязчивость — Использует прокси, а не патчи. Ваш код остаётся чистым
  • Расширяемость — Пишите свои коллекторы для вашей предметной области
  • Современный стек — React 19, TypeScript, Material-UI на фронтенде

Выпущено под лицензией MIT.