nurbekjummayev/filament-tdc-sso
Integrate TDC single sign-on with Filament admin panels using this Laravel package. It provides SSO authentication, configurable login flows, and streamlined user access management, helping developers secure Filament applications with less custom integration work and fewer login friction points.
What this is: nurbekjummayev/filament-tdc-sso at version 0.1 is an initial public release of a Filament plugin that brokers authentication against a TDC identity provider. Release notes contain only an auto-generated changelog link — no feature description, no migration notes, no compatibility matrix.
Architecture fit: Fit is narrow but clean. If the organisation already runs Filament admin panels and TDC is the sanctioned IdP, a plugin that plugs into Filament's auth flow is architecturally preferable to hand-rolling Socialite wiring inside each panel. It sits at the edge of the application (login path only) and does not touch domain logic, so the blast radius of adoption is small. If TDC is not already the IdP, this package has no reason to exist in the stack.
Integration feasibility: Presumed to be a standard Composer install plus a Filament panel-provider registration and a published config file holding client credentials and callback URLs. That is a low-effort integration in principle. The real feasibility question is unanswerable from the release artifact alone: supported Filament major versions (v3 vs v4 plugin APIs differ materially), supported Laravel versions, and whether the protocol is OAuth2/OIDC or SAML are all undocumented.
Technical risk: Elevated, driven by maturity rather than by design.
Key questions to put to the maintainer / vendor before adoption:
Stack fit: Laravel + Filament is a mainstream, well-understood combination. The plugin is a thin adapter at the auth boundary, so it composes with existing panel configuration, policies, and role systems rather than competing with them. No new infrastructure is implied beyond the existing TDC client registration.
Migration path: Introduce the plugin as an additional guard alongside existing local authentication, not as a replacement. Sequence: (1) register an OAuth client with TDC and obtain credentials for a non-production callback URL; (2) install the plugin at a pinned exact version in a staging panel; (3) verify claim mapping and role assignment against a test TDC account; (4) confirm the break-glass local admin path still works with SSO enabled; (5) only then enable for a pilot group of internal admins; (6) retire local passwords for the pilot cohort after a defined soak period.
Compatibility: Two compatibility checks gate everything — Filament major version and Laravel major version. Both must be confirmed from composer.json constraints before the pilot, because a mismatch surfaces as a confusing container or plugin-registration failure rather than a clear error. Also verify the PHP version floor against the runtime.
Sequencing: Treat this as a dependency spike, not a commitment. Timebox an evaluation (roughly 2–3 days of engineering) that answers the key questions above and produces a written go/no-go. Do not let SSO adoption be the reason a Filament upgrade is blocked or, conversely, let a Filament upgrade silently break admin login.
Mitigation for immaturity: Pin to an exact version, vendor the lockfile, and be prepared to fork. At 0.1 the fork cost is low because the surface area is small; budget for it explicitly rather than treating a fork as a failure.
Maintenance: Ongoing cost is small in code volume but non-trivial in attention: an auth-path dependency must be re-validated on every Filament upgrade, every Laravel major, and every TDC-side change. With a solo maintainer and no release cadence, assume the organisation may become the de facto maintainer. Assign a named owner.
Support: No evidence of a support channel, issue-triage SLA, or security advisory process. Internal support burden therefore defaults to the adopting team. Document the integration internally — config keys, callback URLs, claim mappings, break-glass procedure — because the package won't.
Scaling: Negligible scaling concern. The plugin executes once per login, not per request; token refresh frequency is bounded by session lifetime. Load impact is noise relative to any Filament page render. The scaling question is organisational, not technical: how many admins, how many panels, and whether one TDC client can serve them all or each panel needs its own.
Failure modes and mitigations:
composer update. Mitigation: exact version pin.Ramp-up: Low for any developer already fluent in Laravel and Filament — likely under a day to a working staging login. The cost is not learning the package; it is compensating for the absent documentation. Front-load that cost into the evaluation spike and convert the findings into internal docs, so the knowledge does not live with one engineer.
How can I help you explore Laravel packages today?