- What is backpack/permissionmanager and how does it relate to spatie/laravel-permission?
- backpack/permissionmanager is an add-on for Backpack for Laravel that ships admin CRUD screens for Users, Roles, and Permissions. It does not implement its own authorization model; it delegates the actual permission logic and caching to spatie/laravel-permission. In practice, Backpack provides the admin shell and routes, Spatie provides the gates and policies, and this package provides the operator-facing UI on top.
- How do I install backpack/permissionmanager in a Laravel application?
- Install it with Composer alongside Backpack CRUD and spatie/laravel-permission, then register the service provider if your Laravel version does not auto-discover it. Publish the migrations and config, run the migrations, and make sure your User model uses Spatie's HasRoles trait. The real work is aligning guards, model bindings, and your permission taxonomy with the existing auth setup rather than the install itself.
- Which Laravel and Backpack versions does backpack/permissionmanager support?
- The package is tightly coupled to Backpack major versions and, transitively, to Laravel major versions, so the supported matrix is defined by the pinned release. Check the composer.json constraints and release notes for the exact combination before upgrading either Backpack or Laravel. Pin exact versions and validate the full Laravel x Backpack x Spatie x PermissionManager matrix in CI before any upgrade.
- Can I use backpack/permissionmanager without Backpack or with a different admin panel?
- No, it is an add-on to Backpack for Laravel rather than a standalone RBAC library. Its screens are built with Backpack CRUD fields, widgets, and routes, so using it outside Backpack effectively means adopting Backpack as your admin framework. If you use another admin panel, use spatie/laravel-permission directly and build your own management screens.
- Does backpack/permissionmanager support multiple guards and multi-tenant setups?
- It works on top of Spatie's guard_name concept, so multi-guard setups are possible once you configure the guards and model bindings correctly. Multi-tenancy is not something the package scopes for you out of the box; the shipped screens generally treat roles and permissions globally unless you customize them. For per-tenant scoping you should expect to override Backpack fields and add your own filtering logic.
- What license does backpack/permissionmanager use and is it safe for commercial use?
- The GitHub repository reports NOASSERTION rather than a clean SPDX identifier, which is an operational blocker until resolved. The Backpack ecosystem norm is MIT and the core Backpack CRUD package is MIT, but premium Backpack add-ons are commercially licensed, so confirm with legal which terms apply here. Also check whether any bundled assets carry separate terms before shipping to production.
- Can I disable the Users CRUD or customize it to match my own user model?
- The shipped CRUDs are ordinary Backpack CRUD controllers, so you can override the fields, remove routes, or exclude the Users screen from your menu and route files if you only want the Roles and Permissions management surface. Customizing is supported through Backpack's field and widget API, but replacing the User CRUD to match a domain model means writing bespoke code. If your user model is far from the default, consider keeping only the Roles and Permissions screens and managing users in your own module.
- How do I migrate an existing roles and permissions system to backpack/permissionmanager?
- The critical step is reconciling your current role and permission tables and naming with Spatie's name and guard_name schema. Plan a one-time data migration and a dual-read period rather than a hard cutover, and budget for a translation layer if your incumbent system is not Spatie-based. After that, seed your taxonomy from a versioned seeder and lock the management UI behind a super-admin gate.
- Is backpack/permissionmanager production-ready and actively maintained?
- Release cadence is active, with recent releases, which is a positive maintenance signal. External hardening evidence is thin, however: around 568 GitHub stars and no listed dependents means the real user base is inferred from the Backpack install base rather than measured. Review open versus closed issues and release history depth yourself, and treat the license question as the largest blocker before production use.
- What are the alternatives to backpack/permissionmanager?
- If you are already on Backpack, the main alternative is using spatie/laravel-permission directly and building your own CRUD screens with Backpack. If you are not committed to Backpack, Filament Shield, Laravel Nova's permission tools, or plain Spatie plus custom Blade views are common choices. Switching admin frameworks just to get these screens is rarely worth it; pick the admin panel first and the permission UI second.