patchlevel/event-sourcing-dashboard-bundle
A Symfony dashboard bundle for patchlevel/event-sourcing that adds a web UI for inspecting stored events, aggregates, and projections. Browse message metadata, trace event flows, and debug event-sourced applications faster from one place.
#[Inspect] attribute (description, icon, color, size), lowers the ramp-up cost for new engineers joining an event-sourced codebase.Adopt when:
^3.8, with patchlevel/event-sourcing-bundle ^3.7). This is a hard prerequisite — it is a Symfony bundle, not a Laravel package, so Laravel teams are not a fit without an adapter strategy.patchlevel/event-sourcing-admin-bundle): it is no longer maintained, making migration to this dashboard a maintenance-risk decision rather than an optional upgrade.Look elsewhere when:
Adoption also requires a migration step, not just an install: the package name, bundle class, configuration root (patchlevel_event_sourcing_dashboard.enabled: true), and route names have all changed, and the config and routes import must be updated per the getting-started guide. Assets are served via assets:install or Symfony's asset mapper. Plan for this as a discrete task and a config change, not a drop-in dependency bump.
For executives: This is the operational control panel for our event-sourced platform. It replaces the unmaintained admin bundle and gives us a supported, stable (1.0.0) way to inspect and operate our event data. The business value is risk reduction and cost avoidance: we are not paying engineers to build and maintain bespoke admin tooling, and when something goes wrong the team can inspect state and manage subscriptions directly instead of improvising.
For engineering leadership: Adopt patchlevel/event-sourcing-dashboard-bundle and retire patchlevel/event-sourcing-admin-bundle, which is no longer maintained. The 1.0.0 release is the first stable version, so we now have a version target. Budget for a migration: bundle class, config root, routes, and package name all change. Requirements are PHP 8.2–8.5, Symfony 5.4–8, and patchlevel/event-sourcing ^3.8 — confirm we are within that matrix before committing.
For security and operations: The dashboard ships without built-in access control and is intended for development use. It is disabled by default, and when disabled registers no controllers, routes, or services. Enabling it is an explicit decision. If we expose it in production, the route prefix must sit behind Symfony security, per the production-usage docs — that is a scoped security task, not a configuration toggle.
Risks to flag: The backward-compatibility policy excludes Twig templates and controller internals, so any deep customization of the UI is our maintenance burden. Route names and paths are covered, which protects our links and deep-linking, but not template-level overrides. Keep customizations minimal to stay close to the supported path.
How can I help you explore Laravel packages today?