@shaankhosla/repeat
v0.0.24
Published
Spaced repetition, in your terminal
Readme
repeat
repeat is a command-line flashcard program that uses spaced repetition to boost your memory retention. It’s like a lightweight, text-based Anki you run in your terminal. Your decks are kept in Markdown, progress is tracked in SQLite, and reviews are scheduled with Free Spaced Repetition Scheduler (FSRS), a state-of-the-art algorithm targeting 90% recall.
Features
- Cards live in
.mdfiles, so edit them using your favorite markdown editor, back them up with version control, and let them live alongside regular notes. - Progress is tracked with a hash of the card content, so edits automatically reset their progress.
- Free Spaced Repetition Scheduler (FSRS), a state-of-the-art algorithm targeting 90% recall, automatically schedules reviews for you.
- Terminal UX:
repeat drillrenders cards with ratatui;repeat createlaunches an editor dedicated to card capture;repeat checkdisplays progress at a glance. - Inline media support: reference local images/audio/video inside your decks and open them from a drill session without leaving the terminal.
- Import from Anki: convert
.apkgexports into Markdown decks withrepeat importso you can bring your existing collection along.
Documentation
Installation, quick-start, and usage guides now live in the documentation.
Installation
Install script (Linux & macOS) - Recommended
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/shaankhosla/repeat/releases/latest/download/repeat-installer.sh | shHomebrew (macOS)
brew tap shaankhosla/homebrew-tap
brew install repeatWindows (PowerShell)
irm https://github.com/shaankhosla/repeat/releases/latest/download/repeat-installer.ps1 | iexnpm
npm install @shaankhosla/repeatQuick Start
Create a deck in Markdown (
cards/neuro.md):You can put your normal notes here, `repeat` will ignore them. Once a "Q:,A:,C:" block is detected, it will automatically turn it into a card. Q: What does a synaptic vesicle store? A: Neurotransmitters awaiting release. --- Use a separator to mark the end of a card^ Then feel free to go back to adding regular notes. C: Speech is [produced] in [Broca's] area.Index the cards and start a session:
repeat drill cardsSpace/Enter: reveal the answer or cloze.O: open the first media file (image/audio/video) referenced in the current card before revealing the answer.1: mark asFail,2: mark asPass.EscorCtrl+C: end the session early (progress so far is saved).
