pktharindu/nova-permissions
A Laravel Nova package for managing roles and permissions with spatie/laravel-permission. It adds Nova resources to create, edit, and assign roles and permissions, giving administrators a simple UI for user access control.
Architecture fit
canViewAny, canUpdate, canSee, etc. This package is an admin surface (Nova resources/tooling) over role and permission data, not an authorization engine. Enforcement still lives in your policies.spatie/laravel-permission. This release does not answer that question — no PHP dependency changes appear in the changelog, so the underlying engine's identity and constraint remain unconfirmed.Integration feasibility
Technical risk
webpack, express, braces, ws, elliptic, micromatch, cross-spawn, nanoid, http-proxy-middleware). Several correspond to published advisories. This confirms the package ships Node-built assets and that its JS hygiene is dependabot-driven. Most look dev-time only, but confirm none reach the shipped compiled assets in dist/.Gate::before remains the classic source of silent, global over-permissioning.Key questions
spatie/laravel-permission, and at what constraint? Who owns upgrading that transitive dependency?Stack fit
composer.json rather than relying on the changelog line.spatie/laravel-permission is already in the stack, this remains additive UI with near-zero architectural change. If it is not, you are still adopting spatie as a transitive architectural decision and should evaluate it on its own merits first.dist/ is committed and whether you need a JS toolchain to rebuild after patching.Migration path
viewAny:Invoice, update:Invoice).canViewAny/canUpdate delegate to a single permission-check helper; avoid stringly-typed permission names scattered across the codebase.Compatibility
Sequencing
Maintenance
Support
Scaling
Failure modes to design against
Gate::before super-admin → silent global bypass.Ramp-up
Build vs. buy
How can I help you explore Laravel packages today?