beyondcode/nova-tinker-tool
Nova Tinker Tool adds an interactive Artisan Tinker console to Laravel Nova, letting admins run PHP and tinker commands directly from the dashboard without opening a terminal. It speeds up debugging, quick data checks, and experimentation in a familiar Nova interface.
laravel/tinker, which reframes the decision as adopt vs. reimplement the pattern, not adopt vs. build from scratch. The archived status (last release 2020-01-30, no commits since) means long-term ownership lands on us either way.Consider adopting (or copying the pattern) when:
ToolServiceProvider hooks line up with the host framework.APP_ENV=local or a staging instance behind SSO, ideally also gated by a Nova gate/authorization callback, so the blast radius of arbitrary code execution is bounded.Look elsewhere (or write it yourself) when:
laravel/tinker constraint to get it running, at which point you have effectively rewritten it.Verification before any pilot: confirm which Nova major it was built against, check that a clean composer require resolves on your app's locked graph, and demonstrate it working in a non-production environment with a real authorization gate before showing it to anyone. The package's documentation will be stale.
For executives: This is a small, MIT-licensed convenience tool that lets engineers run quick diagnostic queries from inside the Nova admin panel instead of a terminal. It costs nothing to license and roughly a day of engineering to evaluate. The catch is that it has been archived since January 2020 — it is not maintained, it does not support current Nova or Laravel versions, and adopting it means we own the code. Recommendation: treat it as a reference implementation and a half-day spike, not a dependency. If the capability proves valuable, budget a short internal build (or fork) rather than adopting an abandoned package. No customer impact either way.
For engineering: It's a thin Nova wrapper around laravel/tinker — a tool class plus a service provider that registers an in-panel REPL. It is archived, last released 1.1.0 (2020-01-30) with a single line item widening the Tinker constraint; there is no CI and no Nova 4/5 path. Practical handling: read the source to gauge the shape, then either fork it into our own namespace with updated Nova constraints and an authorize() gate, or reimplement the same idea in a few dozen lines. Regardless of route, hard-gate it behind non-production environment checks plus a Nova authorization callback, and never enable it on a production deployment — a web-reachable REPL with database access is the actual risk here, not the package's age.
Framing to avoid: do not present this as a feature delivery, a roadmap milestone, or a "buy" decision. It is a pattern reference for internal tooling whose value is informational — telling us how cheap the build is and how much governance it requires.
How can I help you explore Laravel packages today?