Installable flashcard trainer built with Vite + React + TypeScript. It works on desktop and phone, supports Add to Home Screen, and keeps session progress in localStorage.
- PWA-ready: manifest, service worker, app icons, offline caching for app shell +
words.json. - Baseline sweep across a random active set of 50 words (or all if less).
- Training algorithm with expanding batches of +3 words and 2 perfect-run streak requirement.
- Persistent session state so refresh does not lose progress.
- Reset session button.
- Unit tests for training logic (Vitest).
npm install
npm run devBuild production assets:
npm run buildRun tests:
npm run test- Open
public/data/words.json. - Add entries using this schema:
{ "id": "unique-string", "front": "Hebrew word", "back": "Simple explanation / translation", "example": "Short example sentence (optional)" } - Keep every
idunique.
- Push this repo to GitHub.
- In Vercel, import the repository.
- Framework preset: Vite (auto-detected).
- Deploy. The app will be available at a URL such as
myhebrewcards.vercel.app.
- Session persistence key:
flashcards-session-v1. - Reset Session clears storage and restarts from home screen.