dejwcake/admin-auth
Admin authentication for Laravel. Adds a dedicated admin guard with login, logout, and password handling, plus middleware to protect admin-only routes. Keeps admin sessions separate from regular user sessions so back-office access stays isolated, simple to configure, and easy to drop into existing a...
spatie/laravel-permission ^8.3, so “buy” also means accepting an authorization-library dependency and its upgrade path.spatie/laravel-permission ^7 to upgrade that package too. Treat this as a platform-level dependency bump triggered by a small locale package, and schedule it deliberately rather than letting it ride along with an unrelated release.language attributes instead of passing a non-string value into setLocale(). If your User model uses Laravel enum casts for language, that integration blocker is already removed.Role / Permission contracts itself, the permission v8 upgrade requires findByName() / findOrCreate() to accept BackedEnum|string. This is the one place where the upgrade can require first-party code changes—worth scoping before commit.spatie/laravel-permission measurably widens the transitive footprint of adopting this package.AGENTS.md/CLAUDE.md documentation, and internal housekeeping dropping a stale phpmd.xml .gitattributes entry. These are signals of healthy stewardship, not product features.Consider adoption when:
spatie/laravel-permission ^8.3—or you are willing to make that upgrade part of this adoption.Look elsewhere when:
spatie/laravel-permission ^7 and cannot take the v8 upgrade in this release window; 2.1.0 will block you until you can.spatie/laravel-permission at all—pulling in an authorization library solely to switch locale is disproportionate, and a short custom middleware is the better trade.Role / Permission contracts in first-party code and cannot yet absorb the BackedEnum|string signature change.For executives: This remains a small, low-risk piece of functionality—automating each user’s preferred language—and the underlying package is actively maintained. The 2.1.0 release adds no new features and no breaking changes to this package’s own code, but it does require a major upgrade of a widely used authorization library. That upgrade is the real work item, so it should be scheduled and resourced rather than treated as a routine patch. Recommendation: proceed, but sequence it alongside the permission-library upgrade and confirm no custom authorization contracts are affected.
For engineering: 2.1.0 bumps spatie/laravel-permission from ^7.4 to ^8.3 with no code changes in this package; the only first-party risk is custom Role / Permission contract implementations, which must accept BackedEnum|string in findByName() / findOrCreate(). Verify the app’s permission pin and run the authz test suite as part of the bump. Distribution archives are slim, dev/CI setup is current, and the 2.0.4 enum-cast fix for language attributes still stands. No migrations are indicated. If the permission upgrade can’t land now, defer this package version—2.0.4 remains functionally equivalent for locale handling.
How can I help you explore Laravel packages today?