dce6809893509efa01c84fbc239f4cfd6c4398e0
Flashcard
Single-user lokale flashcard webapplicatie met hiërarchische lessen, spaced repetition (Leitner), Excel import/export en statistieken.
Snelstart
npm install
npm run db:migrate
npm run db:seed # optioneel, voegt demo data toe
npm run dev # backend op :3000, frontend op :5173
Open http://localhost:5173.
Build (productie)
npm run build
npm start # backend serveert frontend + API op :3000
Tests
npm test # unit tests (backend)
npm run e2e # playwright smoke
Excel-formaat
Eén werkblad met header-rij. Kolommen:
question(verplicht)answer(verplicht)hint(optioneel)lesson_path(optioneel, bv.Spaans/Begroetingen)
Bij import kun je kiezen of bestaande kaarten (zelfde vraag in dezelfde les) worden bijgewerkt en of onbekende lessen worden aangemaakt.
Architectuur
Monorepo (npm workspaces):
packages/shared— gedeelde TypeScript types en Zod schemaspackages/backend— Express 4 + Drizzle ORM + better-sqlite3packages/frontend— React 18 + Vite + Tailwind + Zustand + Framer Motion
Spaced repetition
Leitner-systeem met 5 dozen:
- Nieuwe kaart → doos 1 (direct due)
- Goed → naar volgende doos, langer wachten (1d, 3d, 7d, 14d)
- Fout → terug naar doos 1
Binnen een sessie wordt een fout beantwoorde kaart na ~3 posities opnieuw getoond.
Description
Languages
TypeScript
98.6%
CSS
0.7%
Dockerfile
0.4%
HTML
0.2%