- What is nunomaduro/laravel-pot used for?
- Laravel Pot provides Artisan commands that inspect Laravel's service container, letting you list bindings, instances, aliases, and provider load order without digging through bootstrap/cache/services.php or adding dd() calls. It is a developer-facing introspection tool meant for debugging container resolution problems. The package registers its commands through Laravel package auto-discovery and does not touch your application's request path.
- How do I install laravel-pot in a Laravel application?
- Install it as a dev dependency with composer require --dev nunomaduro/laravel-pot. Laravel's package auto-discovery registers the service provider, so no manual provider registration or config publishing is required for baseline use. After installation, run the provided Artisan commands to inspect the container.
- Does laravel-pot affect my production application?
- The package is intended as a require-dev dependency, so it is not installed when you run composer install --no-dev. Confirm that your CI images and Docker build stages use --no-dev before assuming production artifacts are unaffected. Because it is a console introspection tool, it sits outside the request and response path.
- Which Laravel and PHP versions does laravel-pot support?
- Version constraints are declared in the package's composer.json, and the available evaluation does not pin specific floors or ceilings. Check those constraints against your fleet's PHP and Laravel version matrix before rollout, especially if you maintain older Laravel majors that may be excluded. Expect possible minor breakage on Laravel major upgrades because output depends on container internals that are stable but not contractually frozen.
- Can laravel-pot output JSON for CI pipelines or dashboards?
- The package is designed primarily for human-readable console output, and machine-readable formats such as JSON or a --format flag are not confirmed in the available evaluation. Treat this as the key thing to verify before adopting it for CI gates or governance reporting. If only formatted tables are available, its value is capped at interactive debugging rather than automation.
- How is laravel-pot different from Laravel Telescope or Debugbar?
- Telescope and Debugbar focus on runtime observability such as requests, queries, and exceptions, while laravel-pot focuses specifically on the service container's registered bindings, aliases, and provider load order. It is a targeted debugging aid rather than a full monitoring stack. Review whether its commands overlap with existing internal Artisan tooling before standardizing it.
- Does laravel-pot show resolved bindings, registered bindings, or both?
- The commands read the container's public surface, which includes bindings, instances, aliases, and resolved or deferred providers. Whether a given command reports registered state, resolved state, or both should be confirmed in your environment. Be aware that forcing resolution of deferred providers can change what you see, so compare output carefully when diagnosing binding issues.
- Does laravel-pot work with Laravel Octane or long-lived workers?
- The tool reports on the container state available to the Artisan command invocation, and the available evaluation does not document specific Octane behavior. It is safest to assume the output reflects boot-time container state for that command run rather than per-request state inside a long-lived worker. Validate against your Octane setup if that distinction matters to your debugging workflow.
- How do I remove laravel-pot from a project?
- Because it is purely additive and installed with require-dev, removal is composer remove --dev nunomaduro/laravel-pot. There are no migrations, published config files, or application code changes to revert. After removal, update your debugging runbook or onboarding documentation so developers do not look for commands that no longer exist.
- Is laravel-pot actively maintained and safe to adopt?
- It is maintained by Nuno Maduro, whose packages such as Pest, Collision, Laravel Zero, and Termwind are widely deployed and actively maintained, which lowers abandonment risk. However, the package itself has roughly 101 stars and zero dependents, so it has little field validation and has not been hardened by heavy community use. Run it as a low-risk dev-only tool, and review its recent release cadence relative to Laravel's release cycle before standardizing.