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
Nova Translatable

Nova Translatable Laravel Package

outl1ne/nova-translatable

Adds translatable fields to Laravel Nova. Wrap any Nova field with the Translatable class to edit and store values per locale, with locale switching in forms and support for spatie/laravel-translatable models. Simple setup for multilingual admin panels.

View on GitHub
Deep Wiki
Context7

A laravel-translatable extension for Laravel Nova.

Frequently asked questions about Nova Translatable
What does outl1ne/nova-translatable actually do?
It is a Laravel Nova extension that lets you wrap existing Nova fields so their values are edited and stored per locale. It adds a locale switcher to Nova forms and delegates the storage and retrieval semantics to spatie/laravel-translatable, which keeps each translated attribute in a JSON column. It is purely an admin-panel concern and does not add a new translation store, service layer, or runtime API surface.
How do I install outl1ne/nova-translatable in a Laravel Nova app?
Install it with Composer, optionally publish the config file to control the locale list, default locale, and fallback behaviour, then wrap your Nova fields in the Translatable class. For an existing Nova plus spatie/laravel-translatable stack this is effectively drop-in, and getting a pilot resource working is measured in hours rather than days. Your Eloquent models still use spatie's translated accessors for normal read paths.
Which Laravel and Nova versions are supported?
The package targets Nova 4 and Nova 5 and is designed for apps already using spatie/laravel-translatable. Release 3.1.0 is additive and modernises the dev tooling (Node 24 for asset builds) without adding a runtime dependency. Always check the composer constraints in the repository before upgrading, since Nova majors can move the field internals the package relies on.
Do I need spatie/laravel-translatable to use this package?
Yes. The package wraps Nova fields but hands storage and retrieval to spatie/laravel-translatable, so translated values live in JSON columns per attribute. Most multilingual Laravel applications already run that package, so there is little transitive weight beyond it. Because the data shape comes from spatie rather than this package, your stored content stays intact if you ever remove the Nova wrapper.
How does the locale switcher work in Nova forms?
Once fields are wrapped in Translatable, the form shows a locale switcher and each locale's value is persisted under its own locale key. You configure the available locales, the default locale, and fallback behaviour through the published config file. This is the main piece of value you are buying: a working switcher UI plus the field-nesting and metacomponent plumbing behind it.
Can I use it with Nova Repeatable fields?
Yes, version 3.1.0 adds native Nova Repeatable field support, which removes a non-trivial adapter task since Repeatable carries its own internal field array and serialisation. Note the claim is specifically about native Nova Repeatable fields, not third-party repeatable-style packages, so confirm which one your project uses. Repeatable inside translatable also adds another nesting dimension, so validate that combination explicitly rather than assuming it is fully orthogonal to the existing edge cases.
What are the known limitations and edge cases?
Friction is concentrated in edge cases: file and image fields inside the wrapper, relationship and nested or dependent fields, and fields with custom resolveUsing or fillUsing callbacks. Per-locale validation rules must be expressed against each locale key, and error messages get attributed to the nested key, which editors often find confusing. Test these cases in a pilot resource before rolling the package out across an admin panel.
How do per-locale validation rules work with translatable fields?
Rules are defined per locale key rather than once for the field, so a required rule typically becomes required for each configured locale. Validation failures are then attributed to the nested locale key, which is technically correct but can be confusing for content editors. Plan your form UX and error messaging around that nested-key behaviour.
Is it safe to run in production, and how hard is it to remove later?
It is safe in the sense that it only affects the Nova admin panel and never leaks into runtime request handling, so production read paths still go through Eloquent's translated accessors. If you need to remove it, the package itself can be dropped in an afternoon; the hard part is the data shape, which belongs to spatie/laravel-translatable rather than this package. The larger production risk is upgrade tax when a new Nova major breaks field macros or metacomponents.
How is outl1ne/nova-translatable maintained, and can I test it in CI?
It has a single maintainer with a modest commit cadence, so maintainer abandonment is a real, if moderate, risk; the 3.1.0 contribution from an outside author is a mild positive signal but does not change that. There are no public Packagist dependents and only modest star counts, so there is very little third-party validation of upgrade paths and you will be an early discoverer of breakage. Its own test suite cannot be run meaningfully without a Nova licence, so treat verification as internal verification, pin Nova versions, and budget a fork-and-patch sprint per major upgrade.
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.
dbravoan/dbcms-admin-theme-dbcms
dbravoan/dbcms-theme-db-cyber
dbravoan/dbcms-blocks-basic
dbravoan/dbcms-module-content-audit
dbravoan/dbcms-module-ai-assistant
paygate-to/paygate-php
padosoft/askmydocs-connector-base
defstudio/supercharged-carbon
bernskioldmedia/laravel-matomo
bernskioldmedia/laravel-harvest
bernskiold/laravel-data-scrubber
bernskiold/laravel-currency-converter
bernskiold/laravel-campaign-monitor
bernskioldmedia/laravel-autotranslate
siberfx/telegram-bot
roy-sandip/laravel-view-extended
gregsphotography/site-builder-core
roy-sandip/laravel-view
anodyne/blade-fluentui-icons
webx-ui/module-catalog-collections