Skip to content

feat: add passkeys support for web#1604

Draft
NandanPrabhu wants to merge 1 commit into
masterfrom
feat/passkeys-web
Draft

feat: add passkeys support for web#1604
NandanPrabhu wants to merge 1 commit into
masterfrom
feat/passkeys-web

Conversation

@NandanPrabhu

Copy link
Copy Markdown

Summary

  • Implement passkeySignupChallenge, passkeyLoginChallenge, and getTokenByPasskey on the web platform by delegating to @auth0/auth0-spa-js's passkey API (getSignupChallenge, getLoginChallenge, and the internal _requestTokenForPasskey token exchange), replacing the previous UnsupportedOperation stubs.
  • Bump @auth0/auth0-spa-js 2.19.3 → 2.24.0 to pick up its passkey support.
  • Extend PasskeyError's error-code map to normalize spa-js's passkey error codes into the existing PasskeyErrorCodes.
  • Keep the public contract identical to native (authParamsPublicKey object, authResponse as a JSON string) so app code stays cross-platform — only the credential-manager step differs (browser navigator.credentials vs. a native module).
  • Update README.md, EXAMPLES.md, EXAMPLES-WEB.md, and CLAUDE.md to reflect web support, including a web-specific example showing the navigator.credentials serialization step.
  • Wire up a working Passkeys section in the web example app (example/src/App.web.tsx).

Test plan

  • yarn test — 35 suites / 607 tests passing, including new WebAuth0Client.spec.ts coverage for passkey challenge mapping, token exchange, and error propagation
  • yarn typecheck / yarn lint clean
  • Manually verified end-to-end in a browser against a mocked Auth0 tenant (RS256-signed ID tokens, JWKS, virtual WebAuthn authenticator): signup and login both complete and the app renders the authenticated user

@coderabbitai

coderabbitai Bot commented Jul 22, 2026

Copy link
Copy Markdown

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: e142ef5f-6d96-4b0a-b170-034654e60516

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/passkeys-web

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant