pdmfc/nova-info-card
A Laravel Nova card for surfacing informational content on your dashboard or resource screens. Add a custom info panel to display key metrics, notices, or contextual guidance alongside your other Nova tools, keeping important details visible where your team needs them.
Architecture fit. This is a Laravel Nova card package — a thin presentation layer consisting of a PHP Card subclass plus a compiled Vue component. It fits cleanly into any Nova-based admin panel with no database, queue, or service-provider footprint beyond card registration. It does not touch application domain logic, so it is architecturally inert: low blast radius, low coupling, and easy to remove. The value is purely operator-facing (surface status/context on a dashboard or resource screen).
Integration feasibility. Straightforward for a team already running Nova. composer require plus registration in NovaServiceProvider::cards() or a resource's cards() method. The v1.0 namespace move to Pdmfc\NovaCards\Info is a breaking change for anyone on 0.x — every use statement and every Info::make() reference must be updated, and there is no announced alias/shim. For a greenfield adoption this is a non-issue; for an existing install it is a mechanical but mandatory code change that should not be shipped without a search-and-replace pass and a regression check of the dashboard.
Technical risk.
^1.0, not *).Key questions.
message()? This determines whether existing safe usages silently become unsafe.Stack fit. Requires PHP + Laravel + Laravel Nova (commercial license). If Nova is already the admin layer, fit is native — cards are first-class Nova citizens. If the team is on Filament, Livewire-only admin, or bespoke Blade dashboards, this package is not applicable and should be rejected early to avoid a dead-end evaluation.
Migration path. Two distinct paths:
Pdmfc\NovaCards\Info. No migration work.nova:publish if assets are published, (e) visually verify each card instance in staging.Compatibility. Validate against the pinned Nova major version before committing. Because the card is a compiled front-end asset, Nova upgrades can break rendering even when the PHP side is unchanged — treat Nova upgrades as requiring a card smoke test.
Sequencing.
danger.composer.json.Maintenance. Negligible runtime maintenance — no migrations, no scheduled jobs, no persistent state. The real cost is upgrade maintenance: the package must be re-validated on every Nova major upgrade, and the 1.0 namespace break demonstrates the API can move. Budget a small recurring line item, not a one-off.
Support. Community/small-vendor support. There is no SLA, and issue triage should be assumed slow. Mitigation: the package is small enough to fork and vendor internally if it is abandoned — this should be an accepted fallback before adoption, not after. The updated documentation in this release materially reduces onboarding and support burden and is a genuine positive signal.
Scaling. Non-issue in the conventional sense — the card renders per-request on an admin page and does no heavy work. The scaling concern is organizational: as more dashboards adopt the card, the raw-HTML surface area grows, and so does the number of places a developer might interpolate untrusted data into a message. Governance scales worse than the technology here.
Failure modes.
nova:publish in the upgrade procedure.Ramp-up. Very low — hours for a Laravel developer familiar with Nova, less given the refreshed docs. The only non-obvious learning is the escaping behavior of the message API, which must be taught explicitly rather than discovered in production. Recommend a short internal note covering: correct namespace, registration pattern, theme options including danger, and the raw-HTML policy.
How can I help you explore Laravel packages today?