edrisaturay / filament-utilities
Reusable functions, fields, filters and columns for Filament.
Installs: 2
Dependents: 1
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 0
pkg:composer/edrisaturay/filament-utilities
Requires
- php: ^8.3
- a909m/filament-statefusion: ^2.3
- cheesegrits/filament-phone-numbers: ^2.1
- cocosmos/filament-quick-add-select: ^1.0
- filament/filament: ^5.0
- illuminate/support: ^12.0
- malzariey/filament-daterangepicker-filter: ^4.0
- tapp/filament-progress-bar-column: ^1.0
This package is auto-updated.
Last update: 2026-01-28 18:06:08 UTC
README
A collection of reusable components, traits, and helper functions for Filament v5 applications. This package ensures UI consistency and reduces boilerplate across multiple panels.
Features
Reusable Fields (Fields/ReusableFields.php)
Standardized form fields with pre-configured validation and constraints:
ReusableFields::name(): Standardized name input.ReusableFields::email(): Standardized email input with validation.
Reusable Columns (Columns/ReusableColumns.php)
Standardized table columns for consistent data display:
ReusableColumns::createdAt(): Standardizedcreated_atcolumn with date-time formatting and toggleable visibility.ReusableColumns::updatedAt(): Standardizedupdated_atcolumn.
Traits & Concerns
CanAccessPanel: An abstract trait that enforces the implementation ofcanAccessPanel(Panel $panel): boolon models (typically theUsermodel), facilitating standardized access control.
Installation
Add the package to your composer.json (usually handled via the root project in this starter kit):
composer require edrisaturay/filament-utilities
The service provider is automatically registered via Laravel's package discovery.
Usage Examples
Using Reusable Fields in a Form
use EdrisaTuray\FilamentUtilities\Fields\ReusableFields; public static function form(Form $form): Form { return $form ->schema([ ReusableFields::name(), ReusableFields::email(), // ... ]); }
Using Reusable Columns in a Table
use EdrisaTuray\FilamentUtilities\Columns\ReusableColumns; public static function table(Table $table): Table { return $table ->columns([ // ... ReusableColumns::createdAt(), ReusableColumns::updatedAt(), ]); }
Implementing Panel Access
use EdrisaTuray\FilamentUtilities\Concerns\CanAccessPanel; class User extends Authenticatable { use CanAccessPanel; public function canAccessPanel(Panel $panel): bool { return true; // Your custom logic } }
License
The MIT License (MIT).