type · recall · repeat

Type it
to keep it.

The study tool where typing is the recall — and an FSRS-6 memory engine schedules exactly what to review next.
Code, Vim & languages for developers; lecture notes & exam prep for every other student.

MonkeyType flow · Anki memory for devs · CS students · self-learners FSRS-6 · BYOK AI · free
~/library/comp372/quicksort SPEED
0 wpm
100% acc
0:00 time
idle
Click here, then start typing tab
Quicksort partitions an array around a pivot, then recursively sorts each side. The average case runs in n log n time, but a poor pivot choice can degrade to quadratic. Lomuto and Hoare are the two classic partition schemes; Hoare tends to do fewer swaps in practice. Choose the pivot well randomize, or median-of-three.
correct char wrong — keep going live caret · 60fps lerp
════════ WATCH THE SCHEDULER ════════

Most study apps hide their algorithm.
We expose it.

Six cards. One rating. Click any score — FSRS-6 re-positions the card on the next-due axis, in real time, with the actual math. No black box, no priority queue you can't see.

$ schedule --next 14d
now 1d 3d 7d 14d
FSRS-6 · retention target 0.90 click a card to select · rate to re-schedule
selected card

quicksort · partition

next review · 3.4d

rate this attempt
────────────────────────────────

Every review you do in the app runs this same loop.
You can read the rules. You can grep the source.

════════ MANIFESTO ════════

Studying isn't reading.
It's doing.

Most study apps treat your brain like a passive disk — highlight a passage, see the same words tomorrow, hope they stuck.

We don't. Every review is a typed answer. Every typed answer is a tiny, measurable retrieval. The keyboard isn't a hurdle; it's the whole point.

Layer on FSRS-6 spaced repetition, Vim-style code drills, and a learning loop that actually feels good — and study stops being something you postpone.

three movements

One loop. No friction.

01

Import anything

PDF · Markdown · .apkg · paste

$memra import notes.pdf
✓ extracted 142 pages
✓ generated 47 cards · q/a · cloze · snippet
↪ ready in ./library/algorithms/

Drag a textbook PDF in. Or paste your lecture notes. Optional BYOK AI converts raw text into typing-ready cards — your key, your account, our prompts.

02

Type through it

Word engine · code engine · vim

fn quicksort(arr) {
if arr.len() <= 1 { return; }
let p = partition(arr);
}

Prose flows word-by-word, MonkeyType-style. Code is char-by-char with syntax highlighting, line numbers, and a working Vim NORMAL mode for the keyboard hard-mode crowd.

03

Remember it

FSRS-6 · cram · daily challenge

┌──── next 24h ────┐
│ due: 12 ▮▮▮▮▮▮▮▮ │
│ new: 4 ▮▮▮▮ │
│ cram: 3d ▮▮▮ ░░░░ │
└──────────────────┘

Every keystroke informs scheduling. Forgotten cards bubble up; mastered ones rest. Exam coming up? Cram mode tightens the interval cap. A daily challenge keeps the streak alive.

60fps caret lerp · zero jank
5ms keystroke → screen
FSRS-6 scientific scheduling
$0 forever-free floor
════════ FAQ ════════

$ man memra

Anki schedules well but feels like 2009 and has no AI. Quizlet is broad-audience and adding paywalls. MonkeyType is pure typing, no study. Memra is the intersection — typing as recall, scheduled by FSRS-6, with Vim and code-native rendering on day one.