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 Resource Manager Laravel Package

sehsah/filament-resource-manager

sehsah/filament-resource-manager provides a Filament resource management layer for Laravel apps, helping you organize Eloquent models and manage resources through configurable tables, forms, and actions in a unified admin interface.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture fit Navigation Studio is a Laravel package that layers a navigation-profile management domain (drafts, publishing, versions) on top of a Filament admin surface. v1.3 is additive: it introduces three tooling capabilities — JSON profile import/export, role-based visibility preview, and version comparison — rather than changing the underlying persistence model. The claim of "no new database migrations required" is the strongest architectural signal in this release: the feature set was delivered against the existing schema, which suggests the domain model already carried draft/version/audience state and v1.3 is largely a read/transform layer over it. For a TPM this is favorable — low schema churn means low blast radius on existing installs.

The release also confirms a deliberate positioning decision: Navigation Studio models navigation visibility, not authorization. The note that "role preview simulates navigation rules; application policies still determine actual access" is an architectural boundary worth recording explicitly. Teams that mistake the preview for an authorization audit will build on a false assumption.

Integration feasibility Three integration surfaces are in play, with different risk profiles:

  • Filament — the release states Filament 3/4/5 signature compatibility checks are in the validation set. Supporting three major versions simultaneously is a meaningful compatibility commitment and is the single largest ongoing maintenance liability in the package. It also means the integration story is genuinely broad: teams on older Filament installs are not forced into an upgrade to adopt this.
  • Spatie permissions — role preview supports Spatie role permissions plus "custom permission mappings," which is the escape hatch that makes this viable for teams with bespoke permission models. The mapping layer is where integration effort will actually be spent.
  • Import/export — JSON drafts move between environments. The explicit caveat that "image files must be transferred separately" is a real operational gap: a draft that references media will import with dangling references unless the team has an independent asset-sync process.

Technical risk Risk is moderate and mostly bounded by the additive nature of the release:

  1. Preview fidelity. Role preview is a simulation. Any divergence between simulated navigation rules and rendered navigation is a support-ticket generator, and it is the kind of bug users report as "the preview lied to me" rather than as a rendering defect. Confidence here rests on the 71 passing tests, which is a reasonable but not large suite for a feature set spanning import/export, role resolution, and diffing.
  2. Filament 3/4/5 breadth. Signature compatibility checks validate the contract, not the behavior. Divergent rendering or lifecycle behavior across three majors can pass signature checks and still break in a real panel.
  3. Import trust boundary. Importing JSON into a new unpublished draft is a safer design than overwriting live profiles, and the validate-and-preview step is the right control. The residual risk is untrusted JSON from another environment carrying resource references or mapping keys that do not exist locally.
  4. Version comparison semantics. Diffing "published vs published" and "published vs draft" is genuinely useful, but the interpretation of "field changes" and "audience changes" needs to match how the team defines a navigation change. Ambiguity here creates disagreement during change review rather than outright failure.
  5. Localization. English and Arabic are shipped; Arabic implies RTL layout support, which is a UI concern the release notes do not address. Worth verifying rather than assuming.

Key questions

  • What is the support policy across Filament 3/4/5 — is this a permanent commitment or a transitional bridge with a stated deprecation path?
  • How is "custom permission mapping" configured, and does it survive a Spatie upgrade or a move to a different authorization package?
  • Does role preview exercise the same code path as live navigation rendering, or is it a parallel implementation? This determines whether fidelity risk is structural or incidental.
  • What is the intended workflow for the separate image transfer — documented manual step, or is there a companion command/asset pipeline?
  • Is there a documented JSON schema for the export format, and is it versioned? Cross-environment import is only as safe as the schema contract behind it.
  • Does the version comparison cover navigation structure only, or does it also surface changes in permission mappings that would alter who sees what?

Integration Approach

Stack fit The package assumes Laravel, Filament, and — for the preview feature to be useful — a Spatie-style permission model. Teams already running Filament panels with Spatie roles are the natural fit and will find v1.3 largely turnkey. Teams with homegrown authorization will need the custom permission mapping path and should budget for that work explicitly. Teams without Filament should treat Navigation Studio as out of scope; the tools ship inside the Filament admin surface and the value proposition is tied to it.

Migration path This is the lowest-friction possible upgrade: no migrations, no schema changes, additive features. The upgrade is a composer bump plus a cache clear and a pass through the admin panel to confirm the new controls render as expected on the installed Filament major. No data backfill, no downtime window, no coordination with dependent services.

The more interesting "migration" is organizational rather than technical: adopting import/export and version comparison changes how navigation changes get reviewed. A team moving from "edit in place, publish, hope" to "draft, diff, review, publish" is adopting a process, not just a feature. That transition needs an owner.

Compatibility The explicit Filament 3/4/5 validation is the headline compatibility claim, and it is verified at the signature level. Practical compatibility should be confirmed empirically on the installed major before rollout — particularly for any team on Filament 5, where the surrounding ecosystem may still be settling. Spatie compatibility is stated for role permissions with a custom-mapping escape hatch. No stated PHP or Laravel version floors appear in the release notes, which is a gap to close before committing.

Sequencing

  1. Verify environment — confirm Filament major, Spatie version, PHP/Laravel floors.
  2. Upgrade in a non-production environment — composer update, clear caches, exercise the three new tools against a copy of real data.
  3. Validate role preview against reality — pick two or three meaningful roles, run the preview, and compare to what those users actually see. This is the single highest-value pre-production check.
  4. Establish the import/export workflow — document the JSON handoff and the separate image transfer step before the first cross-environment use; do not discover the asset gap during a release.
  5. Adopt version comparison as a review gate — make diff review part of the publish checklist rather than an optional convenience.
  6. Roll to production — low risk given no migrations; monitor for preview/render divergence reports in the first weeks.
  7. Extend localization only if needed — English and Arabic ship today; treat additional locales as separate work.

Operational Impact

Maintenance The primary recurring cost is Filament 3/4/5 support. Every Filament release across three majors creates a triage obligation for this package's maintainers, and that obligation is inherited indirectly by anyone who pins to an older Filament major to keep Navigation Studio working. Teams should record which Filament major they are on and track the package's stated support window. Secondary cost is the custom permission mapping layer: it is the integration point most likely to need adjustment when authorization models change.

For the consuming team, maintenance burden is low. No migrations, no schema to babysit, no data to reconcile. The work is configuration and process, not plumbing.

Support Support load will concentrate in two areas. First, preview-versus-rendered divergence — the most likely user-facing complaint, and one that requires the team to be able to explain the simulation boundary. Second, import failures caused by missing images or unmapped resources, both of which are documented caveats and should be pre-empted in internal runbooks rather than learned ticket by ticket.

The documentation was updated in this release, including clarification of automatic publishing behavior — that clarification matters, because "automatic publishing" is exactly the kind of default that surprises people if it is not understood before the first draft goes live.

Scaling Technically the package scales with the admin panel rather than independently of it. Import/export is a per-operation concern, not a throughput concern. Version comparison grows with the number of retained versions and the size of the navigation tree; if version history is unbounded, diff performance and storage become a housekeeping question worth asking early.

Organizationally, scaling means more roles, more profiles, and more environments. Each new role multiplies the preview surface that must remain faithful, and each new environment multiplies the import/export paths where the image-transfer caveat can bite. Multi-environment, multi-role setups should standardize the handoff process rather than improvising per environment.

Failure modes

  • Preview divergence — simulated visibility differs from actual rendering; users make decisions on bad information.
  • Authorization misunderstanding — someone treats navigation visibility as access control and a user reaches UI they should not, or worse, is assumed blocked when they are not. The release notes are explicit that application policies govern access; this must be reinforced, not just documented once.
  • Orphaned media on import — draft imports successfully but references images that were never transferred.
  • Cross-major Filament regression — code passes signature checks but renders or behaves differently on a given major.
  • Version comparison misread — a diff is read as complete when it omits a category of change, undermining the review gate it was meant to provide.
  • Unexpected auto-publish — a draft goes live earlier than intended because automatic publishing behavior was not clearly understood.

Ramp-up Ramp-up is short for Filament-fluent teams — likely a day to first productive use, with the three new tools being self-explanatory in the admin UI. Two areas deserve deliberate onboarding rather than discovery: the import/export workflow (including the separate image transfer) and the preview-versus-policy distinction. A short internal note covering both, plus a worked example of a draft-diff-publish cycle, will prevent most of the confusion this release can otherwise generate. Teams on custom permission mappings should add a second session on that configuration, since it is the least standard part of the integration.

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.
jinas/dhivatar
store-doc/laravel-storage-driver
plus-it/laravel-translation-manager
diephp/perhaps
diephp/telegraph
osmaviation/spreadsheet
microsoft/fluentui-system-icons
mmccook/php-json-canonicalization-scheme
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console
pnscripts/filament-broadquill-lite
pnscripts/laravel-sentfold-lite
vleap/mx-sdk-laravel-internal
twidpay/utils
htetmyathlaing/scout-elasticsearch-driver
artisan-toolbox/front-awesome
ls/client-assistant
users-au/laravel-client
cgv/localized-resource