managarten/apps/calendar/apps/web
Till JS f5a9edcfb6 feat(auth): add TOTP two-factor authentication across all apps
Uses Better Auth's built-in twoFactor plugin for TOTP + backup codes:

Backend (mana-core-auth):
- twoFactor plugin in better-auth.config.ts (issuer: ManaCore)
- twoFactorEnabled field on users table, backupCodes as encrypted text
- 2FA redirect detection in signIn flow
- Passthrough controller forwards /two-factor/* to Better Auth
- Security event types for 2FA operations

Client (shared-auth):
- enableTwoFactor, disableTwoFactor, verifyTwoFactor, verifyBackupCode,
  generateBackupCodes methods with session-to-token exchange

UI (shared-auth-ui):
- LoginPage: 2FA code input view after password login, backup code toggle
- TwoFactorSetup: settings component with enable/disable/QR code/backup codes

App integration:
- All 19 auth stores have verifyTwoFactor() and verifyBackupCode()
- All 19 login pages pass onVerifyTwoFactor and onVerifyBackupCode callbacks
- ManaCore settings page has TwoFactorSetup component

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-26 19:55:09 +01:00
..
e2e test(calendar-web): add E2E test for 404 error page 2026-03-24 10:22:56 +01:00
scripts fix(calendar,todo): production readiness improvements 2026-03-24 09:57:24 +01:00
src feat(auth): add TOTP two-factor authentication across all apps 2026-03-26 19:55:09 +01:00
static fix(calendar,todo): production readiness improvements 2026-03-24 09:57:24 +01:00
Dockerfile fix(citycorners): replace @const with direct function calls in templates 2026-03-25 16:05:37 +01:00
eslint.config.js improve code quality 2025-12-03 23:42:37 +01:00
package.json feat(calendar, todo): add shared help pages 2026-03-25 08:47:12 +01:00
playwright.config.ts feat(calendar): add Playwright E2E tests for web app 2026-03-17 13:08:09 +01:00
svelte.config.js 🐛 fix: switch web apps to adapter-node for Docker builds 2025-12-08 16:30:04 +01:00
tsconfig.json feat(calendar): add complete calendar app with backend, web, and landing 2025-12-02 13:15:04 +01:00
vite.config.ts feat: show build date/time on login screen across all apps 2026-03-21 12:40:57 +01:00