sbine/nova-route-viewer
A Laravel Nova tool that displays all registered routes inside your Nova dashboard. Browse HTTP methods, URIs, route names, controller actions, and middleware at a glance, with search and filtering—a handy replacement for artisan route:list and great for exploring large route tables.
What changed: 0.1.0 is a requirements-only release. It raises the floor to PHP 8.2+, Laravel 11+, and Nova 5+, and introduces a CI pipeline. There are no new features, no API changes, and no deprecations listed beyond the dropped platform support.
Architecture fit: nova-route-viewer is a Nova tool — a read-only introspection surface that renders the application's registered routes inside the Nova admin panel. Architecturally it is a leaf dependency: it consumes Laravel's route collection and Nova's tool-registration contract, and nothing else in the stack depends on it. That makes fit largely a function of our Nova version, not our application design. It is a developer/operator convenience tool, not a runtime component on any request path.
Integration feasibility: Straightforward if we are already on Nova 5. Nova 5 itself requires Laravel 10+/11 and PHP 8.1+, so this package's Laravel 11+/PHP 8.2+ floor is stricter than Nova's own — meaning a Nova 5 upgrade alone does not guarantee eligibility. Teams on Nova 4 or on Laravel 10 are hard-blocked at 0.0.11 and will receive no further updates.
Technical risk (moderate, well-contained):
0.0.11 to 0.1.0 is a minor bump under 0.x semver, which conventionally permits breaking changes. Composer constraints of ^0.0.11 will not resolve to 0.1.0 at all, so there is no silent-breakage path — but it also means teams will not be prompted to notice they've been left behind. Pinning is required either way.RouteServiceProvider in favour of bootstrap/app.php and withRouting(). The package reads the route collection, so the question is whether it correctly handles routes registered through the new bootstrap path, deferred providers, and route caching. The release notes assert compatibility but the changelog shows no corresponding code changes — the CI addition may be the only verification.Key questions:
0.0.11 as an unsupported fork.bootstrap/app.php routing and under route:cache?Stack fit: This package is only viable for teams already committed to Nova 5 on Laravel 11+ and PHP 8.2+. Treat it as an optional operator convenience, not a required capability — nothing breaks if it is absent. That framing should drive how much upgrade pressure we let it create.
Migration path:
0.1.0 directly; replace any ^0.0.x pin.0.0.11 and pin exactly (0.0.11, not ^0.0.11, to avoid surprise resolution if the maintainer backports). Accept that the package is now frozen for us and plan its removal at the next Nova upgrade rather than upgrading the platform for the package.Compatibility: Confirm the Nova 5 requirement is a hard composer.json constraint before planning anything; if it is, Composer will resolve correctly and fail loudly, which is the behaviour we want. Also verify the package's extra / tool-registration metadata still matches Nova 5's tool-discovery conventions — Nova tool registration has shifted across major versions and is a common breakage point.
Sequencing:
nova-route-viewer to 0.1.0.App::environment() so it is not live in production.Maintenance: Very low. No runtime dependency, no migrations, no config publication of consequence, no background processes. Ongoing cost is essentially "review releases when the platform moves."
Support: Thin. Single maintainer, small user base, and an issue tracker that is the only escalation path. Mitigate by keeping the tool non-critical and by ensuring no other internal tooling depends on it. Because it is a Nova panel feature, removal is a one-line change — that is the real support story and it is a good one.
Scaling: Not applicable in the request-path sense. The one scaling-adjacent concern is rendering performance on applications with very large route tables; if the tool loads the full collection without pagination, it becomes slow and memory-hungry in exactly the environments (large monoliths) where route debugging is most valuable. Worth a spot check on our largest app before rolling out broadly.
Failure modes:
php artisan route:list from the CLI, which covers the core use case at zero dependency cost.Ramp-up: Negligible for users — it is a read-only list view inside Nova. For the platform team, the only real work is the version audit and the staging validation against a route-cached build. Budget an hour, not a sprint.
How can I help you explore Laravel packages today?