// the find
eudoxia0/hashcards
A plain text-based spaced repetition system.
hashcards is a CLI spaced repetition tool where your flashcards live as plain Markdown files and scheduling is handled by FSRS. It spins up a local web server for review sessions rather than being a TUI or full GUI app. If you're already keeping notes in text files and want SRS without Anki's proprietary format and sync account, this fits.
Content-addressable cards (SHA hash of text) is a clever design choice — editing a card resets its progress, which is the correct behavior rather than silently preserving stale schedule data. FSRS is the right algorithm here; SM-2 is obsolete and most plain-text SRS tools haven't caught up. The format is genuinely minimal — Q:/A:/C: notation with no magic syntax beyond that, and standard Markdown images/audio just work. Vendoring KaTeX and highlight.js means it works offline without a CDN dependency, which matters for a local study tool.
Progress not saved until session ends is a real foot-gun — if the process crashes mid-session or you close the tab, you lose all grades from that session. There's no sync story at all; the SQLite db lives next to your cards, so using this across machines means you're manually managing two files in a git repo, and merge conflicts on binary SQLite files are unpleasant. The stats command outputs JSON but the README says 'only JSON output is supported' where it lists HTML as an option — incomplete feature that got documented before it shipped. No import from Anki, which is the obvious migration path for anyone with an existing deck collection.