phalcon / phalcon/debugbar

[NFR]: Debug bar support for ADR / non-MVC apps

Open
#13 0 comments 0 reactions 1 assignee View on GitHub

@niden is already working on this.

Since Jul 22, 2026.

enhancement
Dominant language
PHP
Stars
5
Forks
3
Avg merge
2d 23h
Merged PRs (30d)
3

Description

Context: phalcon/debugbar can only be booted and injected against a Phalcon\Mvc\Application, and its collectors gather data by subscribing to MVC event names. That makes the bar unusable in an ADR app (Phalcon\ADR), which was discovered while wiring phalcon/vokuro-adr (the bar is a dependency there but entirely unused). The goal is to make the bar work on ADR - and, by construction, on any framework - without forcing Phalcon\Di\DiInterface back into the ADR delivery ring. Motivation: ADR is a strong pattern for HTML apps, not only JSON, and the debug bar should not be MVC-only.

Events-manager strategy #15

The root coupling is that collectors know framework event names. Break it with three layers:

  1. A canonical debug-bar signal set the bar owns — a small, stable vocabulary (query, view.rendered, route.matched, request.received, response.sending). Collectors subscribe only to these.
  2. A per-framework bridge that maps native signals to canonical ones — MVC listens to db:afterQuery / view:* / router:matchedRoute; ADR listens to PIPELINE_* / APPLICATION_* or instruments directly.
  3. A direct push API on collectors for hosts with no events manager — the bridge pushes.

The events manager then becomes an implementation detail of the active bridge, not a hard dependency of the collectors.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.