jeffersongoncalves/filament-socialite
A Filament plugin that adds social login to your admin panel using Laravel Socialite. Let users sign in with Google, GitHub, Facebook, and other providers, with easy configuration of providers, buttons, and redirects for a smooth authentication experience.
Baseline note: No prior assessment exists; this establishes the baseline at v2.0.0. Evidence is limited to the release notes — no source review, test suite results, or composer.json constraints were available, so several items below are flagged as open questions rather than findings.
Architecture fit
SocialitePlugin) rather than a standalone auth package, so it composes into the panel provider's plugin() registration. That is the idiomatic Filament v4 extension pattern and keeps configuration declarative and per-panel.jeffersongoncalves/laravel-socialite. Low surface area is good for a TPM: fewer integration points to own.AUTH_LOGIN_FORM_AFTER render hook dependency is the main architectural coupling. Button placement is inherited from Filament's auth view structure; if that hook is renamed or its ordering changes in a v4 minor, UI placement breaks silently rather than erroring.Integration feasibility
Provider API, add client_id/client_secret/redirect env entries. Realistic spike: half a day to a green callback in a dev environment per provider.resolveUserUsing / createUserUsing callbacks.canAccessPanel() gating is the feature that makes this viable for admin panels, where "authenticate with Google" must not imply "gain access." Confirm it is enforced at login time, not only at render time.resolveUserUsing matches an existing user by email, and the provider does not guarantee verified email (or the app trusts an unverified one), an attacker can link to a victim's account. This is the single finding that can block adoption.jeffersongoncalves/laravel-socialite, a personal-namespace package. Its release cadence, test coverage, and maintenance posture are now your auth path's posture.stateless provider flag disables OAuth state validation. Legitimate for some mobile/native flows; dangerous as a default on a web login form.Key questions
resolveUserUsing match accounts, and does it require a verified email from the provider?state validated by default, and what exactly does stateless opt out of?error=access_denied) gracefully?laravel-socialite.Stack fit
Migration path
resolveUserUsing/createUserUsing before enabling the button, and run both flows in parallel behind a flag; (c) coming from the v1.x (Filament v3) line — this is a synchronized major upgrade with Filament itself, so schedule it as part of the Filament v4 upgrade, not as an independent change.laravel-socialite schema expects. If your current implementation stores provider identity in a custom table, plan a data reconciliation step rather than a clean cutover.Compatibility
Sequencing
resolveUserUsing, stateless, and canAccessPanel() enforcement — blocking gate.Maintenance
laravel-socialite. Both need version tracking, changelog review, and a named owner. Budget a recurring review each Filament minor release — the render hook and panel-routing APIs are the expected breakage points.Support
Scaling
Failure modes
APP_URL change. Most common production incident for this class of package.stateless: true in a web panel as a defect unless documented as intentional.laravel-socialite release changes linking behavior. Exact version constraints are the mitigation.Ramp-up
How can I help you explore Laravel packages today?