parfaitementweb/filament-plugin-translatable-inline
Filament addon for LaraZeus Spatie Translatable that lets you edit translations inline under each field. Makes translatable fields obvious, speeds up editing, and highlights missing locales. Works with Filament v4/v5 via a TranslatableContainer wrapper.
onlyMainLocaleRequired, requiredLocales), allowing incremental adoption.TranslatableContainer or afterStateUpdated hooks. Testing with edge-case field types (e.g., dynamic components, repeaters) is recommended.getTranslatableLocales) may require additional setup.Translation Infrastructure:
spatie/laravel-translatable? If not, what is the current translation system (e.g., JSON columns, custom pivot tables), and what is the migration effort to adopt Spatie?onlyMainLocaleRequired or requiredLocales logic?Filament Customization:
TranslatableContainer or afterStateUpdated hooks?Locale and Validation:
Edge Cases and Scaling:
hasMany or belongsToMany context)?Testing and QA:
composer require lara-zeus/spatie-translatable parfaitementweb/filament-plugin-translatable-inline:"^4.0"
spatie/laravel-translatable (if migrating):
php artisan vendor:publish --provider="Spatie\Translatable\TranslatableServiceProvider"
app/Providers/FilamentPluginServiceProvider.php:
Filament::registerPlugin(
Parfaitementweb\FilamentPluginTranslatableInline\FilamentPluginTranslatableInlinePlugin::make()
);
TranslatableContainer:
use Parfaitementweb\FilamentPluginTranslatableInline\Forms\Components\TranslatableContainer;
public static function form(Form $form): Form
{
return $form->schema([
TranslatableContainer::make(
TextInput::make('title')
->required()
->maxLength(255)
)
->onlyMainLocaleRequired()
->requiredLocales(['en', 'es']),
]);
}
Translatable trait is applied to the model (not Filament resources).getTranslatableLocales).Phase 1: Proof of Concept (1–2 weeks)
Page or Product model).Phase 2: Incremental Rollout (2–4 weeks)
TranslatableContainer.Phase 3: Optimization and Polishing (1–2 weeks)
How can I help you explore Laravel packages today?