awesome-nova/filter-card
A Laravel Nova card that adds configurable filter controls to resource index screens, letting users narrow listings by date ranges, selections, and custom criteria. Lightweight, easy to register, and designed to drop into existing Nova dashboards with minimal setup.
Card subclass, a Vue component that reads/writes $route.query, and a service provider — an afternoon to a few days of in-house effort, not a sprint. The decision lands as "build internally, keep it out of composer.json."Only if all of the following hold:
laravel/nova and php constraints in composer.json before anything else.LICENSE file is all-rights-reserved by default — check during discovery, not after vendoring.--ignore-platform-reqs as a shortcut; that "works" and is a trap that defers the failure to every fresh clone, new hire, and CI run.Look elsewhere — or simply build it — if:
Practical recommendation: a half-day spike to read the source (one PHP Card subclass, a service provider, a Vue component — fifteen minutes of reading gives you the entire surface area), then reimplement the pattern in-house against your current Nova version. Scope it as a small UI task, not a dependency onboarding.
Executives (one line): A small open-source add-on that displays Laravel Nova filters as a card on the admin dashboard. It's a useful design reference, but it has been unmaintained since 2019 and no published package depends on it — so we are not adopting it as a dependency. If we want the UX, we rebuild it internally in a fraction of a sprint.
Engineering leads: Treat this as a pattern, not a package. It shows a compact way to lift Nova filters out of the dropdown and onto a dashboard surface, coupled to metrics through the URL query string so Back/Forward and bookmarkable dashboards keep working. Expect the code to target Nova's 2019-era card API; a from-scratch implementation against our current Nova version is likely less total effort than a port and gives us ownership. Proposed action: a half-day code read, then a small ticket to implement in-house if the UX is wanted. Do not add it to composer.json — a 2019 card will likely fail Composer resolution and asset compilation (Laravel Mix vs. our Vite build), and the workarounds (--ignore-platform-reqs, patching vendor/) create maintenance debt that outlives the benefit. If we do fork, vendor it into nova-components/, namespace its query parameters to avoid collisions with native filters, and add a one-line smoke check to the Nova upgrade runbook: load the dashboard, confirm the card renders, confirm changing a filter updates a metric.
Design / product owners: The UX bet is "visible filter state beats a hidden dropdown." Validate it cheaply — put a mock on the dashboard, watch whether ops/support actually change the filter there versus continuing to use native filtering. If usage is flat, skip the build and close the ticket with evidence.
How can I help you explore Laravel packages today?