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 Localizable Resources Laravel Package

apility/filament-localizable-resources

A Filament plugin that makes resources localizable: translate resource labels, navigation, form and table fields per locale, and switch languages without duplicating resources. Integrates with spatie/laravel-translatable-style workflows to keep multilingual admin panels clean.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Build vs. buy for locale-aware admin tooling. This package collapses a recurring build item — "let editors manage translated content in the admin" — into a small MIT dependency. It extends Filament's resource layer so one resource handles every configured locale, which means you avoid either (a) duplicating a resource per language or (b) hand-rolling per-locale form logic. For a PM, that's a line-item you can delete from the roadmap and a chunk of engineering time you can redirect.

  • Roadmap input for internationalization. Multilingual support is usually sequenced as "launch English → add markets." This package makes the admin-side cost of each additional locale close to zero: add a locale to a config list, get form tabs, table columns, and resource pages for it. That changes the marginal-cost math for expanding into a new market, which is a roadmap conversation, not just a technical one.

  • Admin tooling scope and ownership. Translation edits stay inside the Filament panel your ops team already uses. That means no separate CMS seat licenses, no second login, no "who owns the translation tool" ambiguity. Content ops can own localized copy directly, and PMs stop filing per-string tickets.

  • Feature-level decisions it directly enables. Per-locale required/optional rules (e.g., "fallback locale mandatory, others best-effort") let you ship a multilingual product incrementally — launch with partial translations rather than blocking on 100% coverage. That's a launch-gating decision a PM usually has to make under pressure, and this package gives you a clean way to encode it.

  • Risk posture for release planning. v1.0.2 is a patch release with no advertised breaking changes or migrations, so it can slot into an existing panel without a coordinated migration window. Low ceremony to adopt, low ceremony to defer.

  • Constraints it surfaces early (useful for scoping). Sortable/searchable translatable columns and per-locale unique validation do NOT work out of the box against JSON translation columns. If your roadmap includes "search across translated titles" or "unique slugs per language," budget for that work explicitly — the package gets you the editing UI, not the query layer.

When to Consider This Package

Consider it when:

  • You are already running Filament (v3 or v4) and your models expose translations via a standard backend (typically spatie/laravel-translatable with a translations JSON column). This package is a UI layer, not a translation store — it assumes that foundation is in place.
  • You need a lightweight, in-panel editing experience for a handful of locales (think 2–6), where an editor switches locale in the panel and expects forms and table columns to follow.
  • You want a small dependency surface rather than standing up a separate localization platform, and your team can absorb standard dependency review.
  • You are comfortable accepting early-stage maturity risk — v1.0.x, a small star count, thin release notes — on a non-critical admin path.

Look elsewhere when:

  • You are not on Filament. This is tightly coupled to Filament's form/table schema API, which differs materially between v3 and v4. There is no portable version of this.
  • You need enterprise translation management: translator collaboration, review/approval workflows, machine translation, glossary enforcement, API-driven localization at scale. That's Crowdin, Lokalise, Phrase territory — different product, different buyer.
  • You require strict translation QA, versioning, or audit trails on content changes. Nothing here provides that.
  • Your localization need is content-marketing scale (hundreds of pages, many languages, external translators) rather than a manageable set of admin-editable resources.
  • You need localized search and sorting as a first-class requirement. The package won't give it to you; you'd be pairing it with generated columns, json_extract expressions, or a dedicated search index (Scout). Factor that work in before committing.

Before putting it on a critical path, verify: maintainer responsiveness, issue activity, and that the package's composer.json Filament constraint matches your panel version. Pin Filament and this package together — Filament minor bumps are the realistic breaking-change vector, and the release notes here won't warn you.

How to Pitch It (Stakeholders)

Executives. This is a small, MIT-licensed dependency that lets non-engineers manage translated content directly inside the admin panel we already run. It lowers the cost of entering non-English markets and removes a recurring engineering chore — localized copy updates — from the backlog. The alternative is building and maintaining a bespoke translation console or paying for a separate localization platform; this is materially cheaper than either, and the latest release is a patch with no migration required, so it carries low adoption risk.

Engineering. It fits the existing Filament stack with a low integration surface: apply a trait to a resource, register your locale list in one place, and get per-locale form tabs, table columns, and resource pages without duplicating resources. It assumes spatie/laravel-translatable-style models, so confirm that layer first. Two known gaps to plan around: sortable/searchable translatable columns need explicit handling (generated columns, JSON expressions, or Scout), and unique validation must be scoped per locale in application code. Pin the package and Filament together, since Filament minor releases are the realistic breaking vector and upstream release notes are thin.

Product & Operations. Editors get one locale switcher that drives the whole panel — forms, tables, and detail views stay in sync — instead of a scatter of per-field language dropdowns. You can encode "fallback locale required, others optional," which means you can launch a market with partial translations rather than blocking on full coverage. The loop between spotting a locale gap and shipping the fix shrinks from a sprint ticket to an admin edit, and content ops own it without engineering involvement.

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.
uni-method/symfony-lib
tacticmedia/scim-server-bundle
neika-ai/symfony-bundle
mattleads/agent-publishing-bundle
glavweb/framework-bundle
glavweb/extra-bundle
glavweb/api-bundle
glavweb/admin-bundle
adachsoft/api-version-bundle
elsayed85/laravel-api-exceptions
ouhssini/laravel-demo-mode
daworks/ncloud-outbound-mailer-driver
gp247/cms
ignibyte/aic-gates
nexa-merchant/blog
novasa/laravel-language-center
opencage/geocode
adolfoholzer/parameters
livenetworks/ln-starter
cgv/localized-resource