n3xt0r/filament-passport-ui
Adds a structured Filament admin UI for Laravel Passport: manage OAuth clients by grant type, personal access tokens, and scopes in one place. Focused on visibility, review, and governance of existing OAuth resources, with no custom tooling or CLI workflows needed.
spatie/laravel-activitylog" is a concrete control you can point at. This is a checkbox you can close without custom work — but only for the admin actions surface, not for runtime authorization behavior.selfService() mode (added in 2.4.0) lets non-admin users manage only their own clients and tokens. That is a support-ticket reduction feature: integration owners stop filing "please rotate my client secret" requests against the platform team.resource:action scope modeling plus the rule that user scopes must be a strict subset of client scopes gives you a defensible, reviewable answer to "why does this integration have write access?" It does not enforce anything at runtime — treat it as a governance control, not a security control.Adopt if all of these hold:
Look elsewhere / build in-house if:
Diligence items before committing: the v2 architecture depends on a second package by the same author (laravel-passport-authorization-core) — check its health independently. The 2.4.0 changelog discloses a config-key bug where an option silently ignored the published config for multiple releases; that pattern argues for pinning versions and verifying configuration is actually taking effect. Also confirm the install command's migrations don't collide with your existing Passport tables.
For executives: We have a governance gap in our OAuth layer — API clients are created from the command line, nobody owns them, scope strings are ad hoc, and we cannot answer an auditor's question about who changed what. This package closes that gap by putting client, token, and scope management behind an admin UI with a full change log, at zero license cost. The tradeoff is a young, single-maintainer dependency in a security-adjacent area; we should treat adoption as a time-boxed pilot with a documented exit path rather than a permanent platform commitment.
For engineering: It's a Filament plugin that bolts resources onto Passport without touching Passport internals — clients by grant type, token inspection and revocation, and scopes modeled as resource:action pairs backed by a real schema. Clean-architecture use cases and domain events make the admin actions loggable and testable. Constraints are strict: PHP 8.4+, Laravel 12+, Passport 13, Filament 4/5, and it pulls in a companion core package. It does not do authorization enforcement — we still own that. Ask: does it fit the stack, and does the schema migration approach match how we manage Passport tables?
Recommendation: time-boxed spike (1–2 days) against a staging environment, gated on stack compatibility, with a written fallback to an in-house Filament resource if the dependency risk is judged too high.
How can I help you explore Laravel packages today?