A powerful Laravel/Filament plugin for adding dynamic custom fields to any Eloquent model without database migrations.
- 32+ Field Types - Text, number, date, select, rich editor, and more
- Conditional Visibility - Show/hide fields based on other field values
- Multi-tenancy - Complete tenant isolation and context management
- Filament Integration - Forms, tables, infolists, and admin interface
- Import/Export - Built-in CSV capabilities
- Security - Optional field encryption and type-safe validation
- Extensible - Custom field types and automatic discovery (coming soon)
- PHP 8.3+
- Laravel via Filament 3.0+
composer require relaticle/custom-fields
php artisan vendor:publish --tag="custom-fields-migrations"
php artisan migrateuse Relaticle\CustomFields\CustomFieldsPlugin;
use Filament\Panel;
public function panel(Panel $panel): Panel
{
return $panel
// ... other panel configurations
->plugins([
CustomFieldsPlugin::make(),
]);
}Add the trait to your model:
use Relaticle\CustomFields\Models\Contracts\HasCustomFields;
use Relaticle\CustomFields\Models\Concerns\UsesCustomFields;
class Post extends Model implements HasCustomFields
{
use UsesCustomFields;
}Add to your Filament form:
use Relaticle\CustomFields\Filament\Forms\Components\CustomFieldsComponent;
public function form(Form $form): Form
{
return $form->schema([
// Your existing form fields...
CustomFieldsComponent::make()->columns(1),
]);
}Full documentation and examples: https://custom-fields.relaticle.com/
Contributions welcome! Please see our contributing guide.
