@open-passkey/astro
v0.1.2
Published
Astro API route handlers for passkey/WebAuthn authentication
Maintainers
Readme
@open-passkey/astro
Astro API route handlers for passkey (WebAuthn/FIDO2) authentication with post-quantum cryptography support.
Install
npm install @open-passkey/astroUsage
// src/lib/passkey.ts
import {
createPasskeyEndpoints,
MemoryChallengeStore,
MemoryCredentialStore,
} from "@open-passkey/astro";
export const passkey = createPasskeyEndpoints({
rpId: "example.com",
rpName: "My App",
origin: "https://example.com",
challengeStore: new MemoryChallengeStore(),
credentialStore: new MemoryCredentialStore(),
});// src/pages/api/passkey/register/begin.ts
import { passkey } from "@/lib/passkey";
export const POST = passkey.registerBegin;// src/pages/api/passkey/register/finish.ts
import { passkey } from "@/lib/passkey";
export const POST = passkey.registerFinish;// src/pages/api/passkey/login/begin.ts
import { passkey } from "@/lib/passkey";
export const POST = passkey.loginBegin;// src/pages/api/passkey/login/finish.ts
import { passkey } from "@/lib/passkey";
export const POST = passkey.loginFinish;With sessions
export const passkey = createPasskeyEndpoints({
rpId: "example.com",
rpName: "My App",
origin: "https://example.com",
challengeStore: new MemoryChallengeStore(),
credentialStore: new MemoryCredentialStore(),
session: {
secret: "your-32+-character-hmac-secret-here",
duration: 86400000,
},
});Related Packages
| Package | Description | |---------|-------------| | @open-passkey/sdk | Browser SDK | | @open-passkey/server | Framework-agnostic server logic |
License
MIT
