- How do I install Filament Cards in a Laravel app?
- Run composer require harvirsidhu/filament-cards, then add a Tailwind @source line pointing at the package's vendor views directory and rebuild your assets. The npm/Tailwind step is the one most often missed, and skipping it leaves cards unstyled rather than throwing an error. No migrations or service provider changes are required, and plugin registration is optional.
- What versions of Laravel and Filament does Filament Cards support?
- Filament Cards requires PHP 8.2+, Laravel 11+, and Filament v4 or v5. On Laravel 10 or PHP 8.1 the package is simply unavailable, so confirm your platform baseline before evaluating it. Because it targets two Filament majors at once, verify behaviour against the exact Filament version you run.
- How do I build a settings hub or cluster front page with Filament Cards?
- Create a page class extending CardsPage and declare cards in a static getCards() method, then point a Cluster, Resource, or route at it. For cluster front pages you can call discoverClusterCards() to generate cards from the cluster's pages automatically, or mix in CardItem entries by hand. Layout comes from CardGroup, column counts, columnSpan, and optional collapsible sections.
- How does Filament Cards auto-discover cluster and resource pages?
- Discovery reads Filament's navigation internals per component, including getNavigationLabel, getNavigationBadge, canAccess, and shouldRegisterNavigation, and creates a card for each authorized page or resource. It calls canAccess() at render time, so hidden or unauthorized components are excluded automatically. You can narrow results with custom discovery filtering and central exclude lists.
- Why are my Filament Cards styles missing after install?
- Add the package's vendor views path to your Tailwind CSS @source directives and recompile your theme assets. Without that line Tailwind purges the card classes and the hub renders unstyled without any build failure. If frontend builds are a shared-service dependency, budget a short walkthrough of your theme pipeline.
- Can I combine manual cards with auto-discovered cards?
- Yes. Manual CardItem instances and auto-discovered cards share the same API, so you can hand-craft external links or custom actions alongside generated ones. Page and Resource hooks such as $navigationDescription and $filamentCardsGroup enrich discovered cards without editing the package itself.
- How do I hide cards based on user permissions or tenant?
- Every card supports visible() and hidden() with closure conditions, and discovery already calls canAccess() on each component before rendering. For multi-tenant apps, tenancy is achieved through those generic visibility closures rather than tenant-aware primitives, so that filtering logic is your code. Per-page hooks and central exclude lists give you additional control points.
- Does auto-discovery hurt page performance in large clusters?
- Discovery evaluates canAccess() once per component on render, so cost scales with the number of components in a hub and the complexity of your policies. That is the correct authorization behaviour, but measure it before pointing a hub at a large Cluster with heavy policy queries. Narrowing discovery scope or caching results are the usual mitigations.
- How do I test Filament Cards in my application?
- Test it like any other Filament page: render the CardsPage through Livewire and assert that the expected cards appear for a given user. Because discovery depends on navigation configuration and authorization, include cases for hidden pages, denied policies, and mixed manual cards. There is no data layer to seed, so the tests stay lightweight.
- Is Filament Cards maintained enough for production use?
- It is a small MIT-licensed package with a single maintainer and a limited install base, so there is no downstream validation or community fallback if it is abandoned. The blast radius is low because cards are additive and removable by deleting one class, which makes a pilot behind a single Cluster reasonable. If you adopt it widely, plan for vendoring or forking; hand-built hub Blade views and custom Filament pages remain the main alternatives.