Skip to content

feat(angular): @seamless-auth/angular bindings #170

Closed

Description

@Bccorb

Part of fells-code/seamless-auth-api#371.

Bindings for Angular on top of the framework-agnostic @seamless-auth/client, matching what @seamless-auth/react offers.

Activity

  1. Bccorb commented on Oct 8, 2026

    @Bccorb
    ContributorAuthor

    Merged in #173, with all checks green: test on Node 22, 24 and latest, plus verify / verify.

    What shipped (it releases with Version Packages #174):

    • @seamless-auth/angular 0.1.0 (Angular 20, 21 and 22). It has provideSeamlessAuth(...), a signal and observable SeamlessAuth service, and the functional guards authGuard, guestGuard, requireAuth({ roles }) and requireGuest(). It also has an HttpClient interceptor scoped to apiHost, and standalone screens in @seamless-auth/angular/routes that are themed with the same --seamless-* tokens as React. Cookie transport only.
    • @seamless-auth/client 0.4.0. The step logic the React screens held moved into flows, so Angular reuses it rather than copying it, and Vue (feat(vue): @seamless-auth/vue bindings #171) and Svelte (feat(svelte): @seamless-auth/svelte bindings #172) can too. React and React Native now call the same code.

    Checklist:

    • Session state and auth actions, exposed idiomatically for Angular
    • Login, passkey registration and OAuth callback views, plus headless use and styling guidance (package README)
    • Route guard
    • Logic that is not Angular-specific moved into @seamless-auth/client
    • Browser project in the verify harness: feat(verify): run the browser specs against an Angular app seamless-cli#256, a draft until this package is published

    A local seamless verify --local --dev run passed all 9 layers. That includes angular and angular-dev, which run the existing React browser specs (register, email OTP, magic link, passkey register and login, OAuth, logout) against an Angular 22 app.

    A security review ran before merge. Its findings were fixed in #173: auth side effects are kept out of server renders, guards no longer hang on the server, the callback screens drop their secret query from the URL, and protocol-relative return paths are refused.

    This issue stays open until the package is published and the harness project passes in CI.

  2. Bccorb commented on Oct 9, 2026

    @Bccorb
    ContributorAuthor

    Done. @seamless-auth/angular 0.1.0 is published (with @seamless-auth/client 0.4.0) from #174, and the browser project landed in fells-code/seamless-cli#256: its verify / verify conformance check passed in CI, running the React browser specs against the Angular reference app on both its production build and ng serve. A local released-mode run against the published packages also passed all 9 layers.

    Vue (#171) and Svelte (#172) can build on the shared flows in @seamless-auth/client. The Angular web template is fells-code/seamless-templates#111; the harness routes a web template with framework angular to the new runtime automatically.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions