alpha
Login
or
Join now
xcc.es
/
anahtar
Star
0
Fork
0
Atom
Configure Feed
Issues
Pull Requests
Commits
Tags
Feed URL
Select the types of activity you want to include in your feed.
[READ-ONLY] Mirror of https://github.com/mrgnw/anahtar. Svelte auth with passkey / email+otp
Star
0
Fork
0
Atom
Configure Feed
Issues
Pull Requests
Commits
Tags
Feed URL
Select the types of activity you want to include in your feed.
Overview
Issues
Pulls
Pipelines
anahtar
/
src
/
lib
4 folders
11 files
at
main
Morgan Williams
fix(AuthPill): replace go-button '...' with accessible spinner (#3)
11d ago
7efb2613
components
fix(AuthPill): replace go-button '...' with accessible spinner (#3) The in-flight go button rendered a literal '...', which reads as a second ⋯ button and forced consumers (anani) to hide it with CSS overrides. Render the same arc spinner AuthFlow uses, with aria-label={m.continue} and aria-hidden on the icon.
1 week ago
db
Normalize email case so one address maps to one account (anani #232) Email is the identity key but was compared case-sensitively and stored as typed, so a different case (e.g. mobile auto-capitalization) missed the user/passkey lookup, and the OTP path then created a duplicate account instead of reusing the existing one. - add normalizeEmail() (trim + lowercase) - d1/sqlite/postgres: case-insensitive getUserByEmail + OTP lookups (COLLATE NOCASE / LOWER) so existing mixed-case rows still resolve; store new users and OTPs normalized - AuthPill/AuthFlow email inputs: autocapitalize=none, autocorrect=off, spellcheck=false - tests for normalizeEmail and adapter case-insensitivity (52 pass) Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
1 month ago
i18n
fix: escape quotes in ln/uz locale strings
4 months ago
kit
add rpId/origin config for passkeys (CF Workers compat)
4 months ago
config.ts
Initial implementation: SvelteKit auth package with email+OTP and passkeys - Core: OTP generation/verification, session management, WebAuthn passkey flows - DB adapters: SQLite (sync) and Postgres (async) with configurable table prefix - SvelteKit integration: handle() hook and catch-all route handlers - UI components: AuthFlow, OtpInput, PasskeyPrompt (Svelte 5) - AuthDB interface uses MaybePromise<T> to support both sync and async adapters
5 months ago
device.ts
feat: passkey names, congrats screen, guessDeviceName helper, version 0.0.2 - Add name field to passkey schema (types, sqlite, postgres adapters) - Thread name through register-finish handler and passkey.ts - Add guessDeviceName() client helper for UA-based device names - AuthFlow sends auto-generated name on passkey registration - Add congrats screen (step 4) with 'You're a passkey!' and 3s auto-redirect - Replace PasskeyPrompt icon with key SVG + pulse glow animation - Fix OtpInput import type bug in AuthFlow - Fix test storePasskey calls to include name field
5 months ago
email.test.ts
Normalize email case so one address maps to one account (anani #232) Email is the identity key but was compared case-sensitively and stored as typed, so a different case (e.g. mobile auto-capitalization) missed the user/passkey lookup, and the OTP path then created a duplicate account instead of reusing the existing one. - add normalizeEmail() (trim + lowercase) - d1/sqlite/postgres: case-insensitive getUserByEmail + OTP lookups (COLLATE NOCASE / LOWER) so existing mixed-case rows still resolve; store new users and OTPs normalized - AuthPill/AuthFlow email inputs: autocapitalize=none, autocorrect=off, spellcheck=false - tests for normalizeEmail and adapter case-insensitivity (52 pass) Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
1 month ago
email.ts
Normalize email case so one address maps to one account (anani #232) Email is the identity key but was compared case-sensitively and stored as typed, so a different case (e.g. mobile auto-capitalization) missed the user/passkey lookup, and the OTP path then created a duplicate account instead of reusing the existing one. - add normalizeEmail() (trim + lowercase) - d1/sqlite/postgres: case-insensitive getUserByEmail + OTP lookups (COLLATE NOCASE / LOWER) so existing mixed-case rows still resolve; store new users and OTPs normalized - AuthPill/AuthFlow email inputs: autocapitalize=none, autocorrect=off, spellcheck=false - tests for normalizeEmail and adapter case-insensitivity (52 pass) Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
1 month ago
index.ts
feat: show loading state during conditional passkey autofill (0.0.12)
4 months ago
otp.test.ts
Add unit and integration tests (46 tests) - otp.test.ts: generate/verify OTP with mock AuthDB - session.test.ts: create/validate/invalidate sessions with mock AuthDB - sqlite.test.ts: full SQLite adapter integration tests with :memory: DB - Add better-sqlite3 as devDep for integration tests
5 months ago
otp.ts
Initial implementation: SvelteKit auth package with email+OTP and passkeys - Core: OTP generation/verification, session management, WebAuthn passkey flows - DB adapters: SQLite (sync) and Postgres (async) with configurable table prefix - SvelteKit integration: handle() hook and catch-all route handlers - UI components: AuthFlow, OtpInput, PasskeyPrompt (Svelte 5) - AuthDB interface uses MaybePromise<T> to support both sync and async adapters
5 months ago
passkey.ts
Normalize email case so one address maps to one account (anani #232) Email is the identity key but was compared case-sensitively and stored as typed, so a different case (e.g. mobile auto-capitalization) missed the user/passkey lookup, and the OTP path then created a duplicate account instead of reusing the existing one. - add normalizeEmail() (trim + lowercase) - d1/sqlite/postgres: case-insensitive getUserByEmail + OTP lookups (COLLATE NOCASE / LOWER) so existing mixed-case rows still resolve; store new users and OTPs normalized - AuthPill/AuthFlow email inputs: autocapitalize=none, autocorrect=off, spellcheck=false - tests for normalizeEmail and adapter case-insensitivity (52 pass) Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
1 month ago
session.test.ts
Add unit and integration tests (46 tests) - otp.test.ts: generate/verify OTP with mock AuthDB - session.test.ts: create/validate/invalidate sessions with mock AuthDB - sqlite.test.ts: full SQLite adapter integration tests with :memory: DB - Add better-sqlite3 as devDep for integration tests
5 months ago
session.ts
Initial implementation: SvelteKit auth package with email+OTP and passkeys - Core: OTP generation/verification, session management, WebAuthn passkey flows - DB adapters: SQLite (sync) and Postgres (async) with configurable table prefix - SvelteKit integration: handle() hook and catch-all route handlers - UI components: AuthFlow, OtpInput, PasskeyPrompt (Svelte 5) - AuthDB interface uses MaybePromise<T> to support both sync and async adapters
5 months ago
types.ts
add rpId/origin config for passkeys (CF Workers compat)
4 months ago