Skip to content

About

The Seamless Auth React frontend SDK, allowing quick integration with seamless auth instances

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

1 star

Watchers

1 watching

Forks

Seamless Auth client SDKs

This repository is an npm workspace that publishes the client-side packages for Seamless Auth:

Package What it is
@seamless-auth/client Framework-agnostic core: the headless auth client, session store, result and error types.
@seamless-auth/react React binding: AuthProvider, hooks, and optional prebuilt auth screens. Depends on the client package.
@seamless-auth/react-native Headless React Native binding: provider, hooks, and the native ports for passkeys, keystore token storage, and in-app browser OAuth.
@seamless-auth/angular Angular binding: a signal-based SeamlessAuth service, route guards, an HttpClient interceptor, and optional standalone sign-in screens.

Most React applications only install @seamless-auth/react; it brings the client core with it. The client package exists so that the bindings share one implementation of the auth flows and session state instead of re-implementing them; @seamless-auth/react-native, @seamless-auth/angular, @seamless-auth/vue and @seamless-auth/svelte are bindings over it too.

Start here

New to Seamless Auth? The self-hosted quickstart runs the full stack locally with Docker. If Seamless hosts your auth instance, follow the managed quickstart instead.

This repo is the client layer: the browser and native SDKs, which talk only to your backend's /auth routes and never to the auth API directly.

flowchart LR
  browser["Browser<br/>@seamless-auth/react, angular, vue, or svelte"] -- "signed httpOnly cookies" --> backend
  native["Native app<br/>@seamless-auth/react-native"] -- "bearer tokens" --> backend
  backend["Your backend<br/>@seamless-auth/express, fastify, or nextjs<br/>mounted at /auth"] -- "bearer token + service token" --> api
  api["seamless-auth-api<br/>owns the session"] --> db[("Postgres")]
  backend -. "verifies tokens with JWKS" .-> api
  style browser stroke-width:3px
  style native stroke-width:3px
Loading

How the pieces connect explains each hop. Compatibility matrix lists which package versions work together.

Working in this repository

npm install
npm run lint
npm test
npm run build

npm test runs every package: one Jest project per package, then the Svelte binding under Vitest, which compiles its components. The React, React Native, Angular and Vue projects resolve @seamless-auth/client to the client package's source, so a change in the core is exercised by the React suite without a build in between. Releases are managed with Changesets; see RELEASES.md and CONTRIBUTING.md.

License

Apache-2.0. See LICENSE.

About

The Seamless Auth React frontend SDK, allowing quick integration with seamless auth instances

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages