Commit Graph

87 Commits

Author SHA1 Message Date
1ba2cab2e8 feat(auth): email service with stub fallback + html templates 2026-05-20 22:50:22 +02:00
4ef3eaae52 feat(auth): server-side auth sessions with rolling expiry 2026-05-20 22:48:39 +02:00
04fbe6e9c3 feat(auth): token service with single-use, hashed storage 2026-05-20 22:47:02 +02:00
0e6bc8c640 feat(auth): password hashing service 2026-05-20 22:45:21 +02:00
afd51571c5 feat(shared): add auth types and zod schemas 2026-05-20 22:44:08 +02:00
7c5600cdef feat(db): add users, sessions_auth, auth_tokens tables 2026-05-20 22:42:07 +02:00
ee7ca9187a docs: implementation plan for sub-project A — auth & roles (22 TDD tasks) 2026-05-20 22:32:38 +02:00
dce6809893 docs: spec for sub-project A — auth & roles 2026-05-20 22:16:41 +02:00
b984e83e2b feat(frontend): apply UI/UX design system - purple/green palette, gradient buttons, 3D flip, polished pages
Applied ui-ux-pro-max design system recommendations:
- Tailwind theme: study purple primary + correct green accent
- Inter + Plus Jakarta Sans typography
- Glassmorphic surfaces with soft shadows and mesh background
- Real 3D card flip with spring physics + answer feedback flash
- Gradient stat cards, progress bar, animated done screen with score ring
- Polished Layout, Dashboard, Admin, AdminLesson, CardTable, ImportDialog, PracticeSetup, Practice, PracticeDone
- E2E smoke updated for new accessible names
2026-05-20 21:48:47 +02:00
9300af2820 docs: readme with quickstart 2026-05-20 21:30:27 +02:00
f88b4d57de test(e2e): playwright smoke for create→practice flow 2026-05-20 21:29:51 +02:00
b1992d0dad feat(frontend): resume active session prompt 2026-05-20 21:26:09 +02:00
f1abb64573 feat(frontend): settings page with dark mode and defaults 2026-05-20 21:24:12 +02:00
289a58fac0 feat(frontend): dashboard and stats pages 2026-05-20 21:22:44 +02:00
2444e2400f feat(frontend): practice setup, session and done flow 2026-05-20 21:20:30 +02:00
16a7cc6ad6 feat(frontend): admin card management with excel import/export 2026-05-20 21:17:55 +02:00
1fd31e1001 feat(frontend): admin lesson tree CRUD 2026-05-20 21:15:54 +02:00
1d501ee50a feat(frontend): zustand stores for settings, lessons, session 2026-05-20 21:14:20 +02:00
1c977c4743 feat(frontend): API client modules + backend GET /api/cards/:id 2026-05-20 21:12:38 +02:00
480ee15df9 feat(frontend): bootstrap React + Vite + Tailwind + Router + Layout 2026-05-20 21:10:27 +02:00
4a382b5dd7 feat(backend): serve built frontend in production 2026-05-20 21:08:06 +02:00
ea45f6fcaf feat(backend): excel import and export 2026-05-20 21:06:44 +02:00
d60ec34501 feat(backend): stats service and routes 2026-05-20 21:03:39 +02:00
5de988d23b feat(backend): sessions routes 2026-05-20 20:59:48 +02:00
9ed5fc39bd feat(backend): session engine with Leitner integration 2026-05-20 20:56:32 +02:00
5468b7c172 feat(backend): cards CRUD service and routes 2026-05-20 20:51:42 +02:00
fcad3d252e fix(lessons): cascade delete descendants in service (no FK on parent_id) 2026-05-20 20:48:42 +02:00
8af8ad54fa feat(backend): lessons CRUD service and routes 2026-05-20 20:47:43 +02:00
3ff79b252c test(backend): in-memory db helper 2026-05-20 20:44:34 +02:00
6283992004 fix(db): non-null assertions in seed for noUncheckedIndexedAccess 2026-05-20 20:43:17 +02:00
dc64a08320 feat(backend): leitner algorithm with tests 2026-05-20 20:42:41 +02:00
1584901c0a feat(db): drizzle schema, migrations, and seed 2026-05-20 20:40:00 +02:00
d13af79940 feat(backend): bootstrap express app with error handling 2026-05-20 20:36:55 +02:00
59261b3bab feat(shared): add domain types and zod schemas 2026-05-20 20:33:53 +02:00
4d0a5aee66 chore: bootstrap monorepo with shared package 2026-05-20 20:31:02 +02:00
011291cf39 docs: add flashcard implementation plan
24 bite-sized TDD tasks covering monorepo setup, backend (lessons,
cards, sessions, stats, excel), frontend (admin, practice, dashboard,
stats), and E2E smoke tests.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-20 20:27:32 +02:00
35fd3d6adc docs: add flashcard app design spec
Initial design for a single-user local flashcard webapp with hierarchical
lessons, Leitner-based spaced repetition, Excel import/export, and
animated practice UI.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-20 20:08:09 +02:00