beyondcode/laravel-dump-server
Laravel Dump Server captures dump() output from your application and displays it in a dedicated console or browser, so you can inspect variables without interrupting requests or halting execution. No more dd() breaking your workflow.
artisan commands is where browser-based dumpers break down or corrupt the response you're trying to inspect. This is a near-zero-cost DX improvement aimed at exactly those contexts — cheap to trial, easy to measure in onboarding time and "why is my JSON response full of debug output" incidents.composer install --no-dev. This is a zero-customer-risk line item that should be classified as such in the dependency register and kept out of release-gating conversations.dump(). Overlapping tools create ambiguity about where output lands, which directly taxes new-hire ramp-up. Decide the routing convention, then adopt.Adopt when:
composer require --dev, auto-discovery, no external service, no paid desktop app, no licence review.dump()/Xdebug the same day, with no production exposure.Look elsewhere when:
Verify before standardizing: exact php / illuminate/* / symfony/var-dumper constraints resolve against pinned lockfiles across your matrix; the prior Laravel floor was retained; the dump-server command can't run in production builds; and loopback behaves correctly under Sail/Docker/Octane.
To executives: This is a small, free, MIT-licensed developer-productivity utility, not a product component. Release 2.1.0 adds no features and no breaking changes — it adds Laravel 12 support and clears PHP 8.4 deprecation warnings, so our developers' debugging workflow keeps working through the next framework and runtime upgrade with no migration project and no licensing cost. Risk is effectively nil: it's a dev-only dependency, runs as a per-developer local process on a loopback port, and never ships to production.
To engineering: Treat this as a routine dev-dependency bump to ^2.1, not a project. No API changes to adapt to. Before landing, verify in CI rather than on a laptop: (a) the solver resolves across our PHP × Laravel matrix — "Laravel 12 support" almost certainly widened the php and illuminate/* constraints, which is the most likely source of lockfile conflicts in tightly pinned repos; (b) PHP 8.4 deprecation notices are actually gone from test output; (c) Laravel 12 apps install without a constraint override or --with-all-dependencies workaround. Confirm the previous Laravel floor was retained and that the command is guarded against accidental production execution. Then document the "which dumper when" convention — dump-server for CLI/queue/API work, Ray where installed, Telescope for request-level inspection, native dump() as the always-available fallback — and record the pre-agreed fallback in the dependency register so it's a decision already made rather than rediscovered during an incident.
How can I help you explore Laravel packages today?