Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Filament Support Laravel Package

athphane/filament-support

athphane/filament-support offers reusable helpers, macros, and utilities for Laravel Filament applications. It streamlines common admin panel tasks, reduces boilerplate, and provides convenience functions for building resources, forms, and tables more efficiently.

View on GitHub
Deep Wiki
Context7

Getting Started

  • Install the package via Composer in a Laravel app that already uses Filament. v1.0.0 auto-registers its service provider, so no manual provider registration is mentioned.
  • Look first at config/filament-support.php. All modifier groups default to true; disable only the Filament surfaces you do not want the package to modify.
  • Clear cached config after changing toggles: php artisan config:clear. If Filament assets appear stale, run php artisan filament:assets.
  • A good first use case is content publishing: cast a model’s status to PublishStatuses, use PublishStatusSelect in a form, display the enum label/color/icon in tables, and use Coordinate/CoordinateMap for geo-enabled records.
use Vendor\Package\Enums\PublishStatuses;

protected $casts = [
    'status' => PublishStatuses::class,
];

Implementation Patterns

  • Forms: Use Coordinate for Google Maps coordinate picking, PublishStatusSelect for draft/pending/published/rejected workflows, and SpatieMediaLibraryFileUpload for media-library-backed uploads. Configure visibility explicitly on uploads when your disk requires it.
Coordinate::make('coordinates');
PublishStatusSelect::make('status')->required();
SpatieMediaLibraryFileUpload::make('hero')->visibility('public');
  • Infolists: Pair CoordinateMap with records that store coordinates. It is read-only, so use it on view/detail pages rather than edit forms.
  • Enums: Use PublishStatuses as the single source of truth for status labels, colors, and icons. In Filament tables or badges, format the enum state through its label/color/icon helpers instead of duplicating status maps.
  • Admin links: Add the FilamentAdminUrls trait to models or resources where you need to generate admin URLs for records, for example in notifications, custom actions, or dashboard widgets.
  • Config-driven modifiers: Keep the default modifiers.* toggles enabled unless your app already defines competing macros/components. Disable only the affected group, e.g. modifiers.tables, rather than removing the whole package.
  • Integration order: Configure Spatie Media Library disks/conversions first, then Filament forms; configure map credentials before using Coordinate/CoordinateMap; then wire enum casts and trait usage into resources.

Gotchas and Tips

  • Auto-registration is convenient but can surprise you if your app has custom Filament macros. If a component behaves unexpectedly, check whether the package modifier is active and disable the matching config toggle.
  • Config values are cached in production. After changing config/filament-support.php or related environment variables, redeploy with a fresh config cache and verify the toggle actually changed.
  • The hiddenOnRelationManager fix affects relation-manager visibility. Re-test resources with multiple relation managers if you rely on hiding fields there.
  • Enum macros are null-safe now, but your own code should still handle nullable statuses explicitly. Avoid calling enum label/color/icon helpers on a null status without a fallback.
  • The package no longer depends on an undefined settings() helper. If your app previously worked around that, remove any unnecessary workaround and verify no local helper conflicts remain.
  • SpatieMediaLibraryFileUpload does not replace Spatie Media Library setup. Ensure the media model, disk, visibility, and conversions are configured in your app.
  • Coordinate and CoordinateMap likely depend on Google Maps configuration. Check API key restrictions, CSP rules, and domain allowlists if the map renders blank or the picker fails.
  • If Filament styles or scripts are missing after install, run php artisan filament:assets. Pin v1.0.0 and smoke-test forms, tables, infolists, and relation managers in staging before rollout.
  • Extension point: publish/override the config and disable specific modifier groups, then register your own Filament components or macros. This is cleaner than fighting auto-registered behavior.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console
pnscripts/filament-broadquill-lite
pnscripts/laravel-sentfold-lite
vleap/mx-sdk-laravel-internal
twidpay/utils
htetmyathlaing/scout-elasticsearch-driver
artisan-toolbox/front-awesome
ls/client-assistant
users-au/laravel-client
robertmarney/lara-hierarchial-collections
simonschaufi/rule-doc-generator
emissaoja/emissaoja
blackbricksoftware/gravityforms-civicrm-form-processor
al-rahabi/fancy-crud
jinas/dhivatar-component
mltstephane/laravel-quality
bernskiold/laravel-talentlms
bernskioldmedia/laravel-form-architect