symfinity / ui-profiler
Symfony Web Profiler toolbar and panels rebuilt with UI Kernel and UX Blocks
Package info
github.com/symfinity/ui-profiler
Language:Twig
Type:symfony-bundle
pkg:composer/symfinity/ui-profiler
Fund package maintenance!
Requires
- php: >=8.2
- symfinity/ui-kernel: ^0.3.1
- symfinity/ux-blocks-core: ^0.1
- symfinity/ux-blocks-extended: ^0.1
- symfony/config: ^7.4||^8.0
- symfony/dependency-injection: ^7.4||^8.0
- symfony/framework-bundle: ^7.4||^8.0
- symfony/http-kernel: ^7.4||^8.0
- symfony/twig-bundle: ^7.4||^8.0
- symfony/web-profiler-bundle: ^7.4||^8.0
- twig/twig: ^3.0
Requires (Dev)
- doctrine/doctrine-bundle: ^2.13||^3.0
- phpstan/phpstan: ^2.1
- phpstan/phpstan-symfony: ^2.0
- phpunit/phpunit: ^11.0
- symfony/asset-mapper: ^7.4||^8.0
- symfony/browser-kit: ^7.4||^8.0
- symfony/css-selector: ^7.4||^8.0
- symfony/event-dispatcher: ^7.4||^8.0
- symfony/form: ^7.4||^8.0
- symfony/http-client: ^7.4||^8.0
- symfony/http-foundation: ^7.4||^8.0
- symfony/mailer: ^7.4||^8.0
- symfony/messenger: ^7.4||^8.0
- symfony/security-bundle: ^7.4||^8.0
- symfony/serializer: ^7.4||^8.0
- symfony/stopwatch: ^7.4||^8.0
- symfony/translation: ^7.4||^8.0
- symfony/validator: ^7.4||^8.0
Suggests
- symfinity/ux-runtime: Optional Stimulus transport for dual-interaction mode
This package is auto-updated.
Last update: 2026-07-13 07:36:41 UTC
README
UI Profiler
Symfony Web Profiler toolbar and panels rebuilt with UI Kernel and UX Blocks
Warning
Dev/test only. Flex registers this bundle for dev and test — do not enable in production.
Note
Read-only mirror. See CONTRIBUTING.md for how to propose changes.
Features
- UI Kernel chrome — theme tokens for toolbar and WDT shell
- ux-blocks markup — core Twig components for profiler panels
- Stock collectors — Symfony Web Profiler data with refreshed layout
- Owned Sass pipeline — shell/WDT CSS authored in
assets/scss/, compiled toassets/styles/ - Dev-only — Flex recipe registers bundle for dev and test
Prerequisites
Add the symfinity/recipes Flex endpoint to your project's composer.json (see recipes README) — recipes are not in Symfony's official recipe repository yet.
Installation
Install with --dev. Requires themed ux-blocks stack.
composer require symfinity/ui-profiler --dev
Quick Start
composer require symfinity/ui-profiler --dev
See Quick start for the full walkthrough.
Documentation
- Quick start — minimal setup path
- Third-party collectors — custom profiler panels
- Upstream sync — Symfony Web Profiler alignment
Maintainer CSS (Sass pipeline)
Author shell and WDT rules in SCSS; commit compiled CSS (same pattern as symfinity/ux-blocks-core):
| Author | Ship |
|---|---|
assets/scss/shell-chrome.scss |
assets/styles/shell-chrome.css |
assets/scss/wdt-toolbar.scss |
assets/styles/wdt-toolbar.css |
assets/scss/wdt-critical.scss |
assets/styles/wdt-critical.css |
cd packages/ui-profiler bin/profiler-css-compile # compile (requires Node/npx + dart-sass) bin/profiler-css-compile --check # CI freshness gate composer scss:check # same as --check
Runtime: ProfilerCssProvider reads committed CSS for inline <style> tags (WDT + shell). ux-blocks-core role CSS remains separate.
Author layout:
assets/scss/
shared/ — tokens + mixins (compile-time)
shell/ — shell partials (@use from shell-chrome.scss)
wdt/ — toolbar + critical partials
shell-chrome.scss
wdt-toolbar.scss
wdt-critical.scss
JavaScript layout
| Path | Role |
|---|---|
assets/controllers/ |
Stimulus controllers (dialog, tabs, table-search) — AssetMapper + UiProfilerExtension |
assets/js/shell.js |
Profiler shell ES module (UiProfilerShell) |
assets/js/wdt.js |
Web Debug Toolbar ES module (UiProfilerWdt) |
assets/js/panels/*.js |
Collector panel boot scripts (time, form, events) |
Shell, WDT, and panel scripts are served by ProfilerAssetController at /_profiler/assets/{path} (not Stimulus — do not merge into controllers/).
Requirements
- PHP 8.2 or higher
- Symfony 7.4 or 8.x
- symfinity/ui-kernel, symfinity/ux-blocks-core
- symfony/web-profiler-bundle