Flashcards¶
The five card types¶
CARD_TYPES = ("basic", "reversed", "cloze", "image", "type_in")
| Type | Behaviour |
|---|---|
basic |
Front, back. |
reversed |
Produces two independently scheduled rows — a front→back card and a back→front card. Knowing one direction is not knowing the other. |
cloze |
Anki-style {{c1::answer::hint}}. One card per deletion number. |
image |
The picture is the question — it sits on the front. For every other type a picture defaults to the answer side. |
type_in |
The answer must be typed. Alternatives are separated by \|; the comparison ignores case, surrounding space and a trailing full stop. |
The schedule is SM-2¶
Not FSRS. SM-2, chosen because everybody who has used Anki recognises the four
buttons. Every review is logged with elapsed_days and scheduled_days — the
shape FSRS would need if it is ever fitted — but no FSRS model is implemented.
The four buttons¶
| Button | Value | Ease change | Next interval |
|---|---|---|---|
| Again | 1 | −0.20 | 10 minutes, and the repetition count resets to 0 |
| Hard | 2 | −0.15 | interval × 1.2 |
| Good | 3 | 0.00 | interval × ease |
| Easy | 4 | +0.15 | interval × ease × 1.3 |
Ease starts at 2.5 and floors at 1.3. The first two successes use fixed steps of 1 day and 6 days before the ease factor takes over. The maximum interval is 365 days.
A card that has lapsed 8 times is marked a leech and pulled out of the normal rotation.
One departure from vanilla SM-2¶
Intervals are capped so that a card always resurfaces at least once inside the 14 days before the learner's exam date. A card scheduled six months out is of no use to somebody sitting an exam next fortnight.
Order within a run¶
Overdue first, then never-seen, then not-yet-due, then leeches last.
The daily queue¶
GET /flashcards/queue (/flashcards/study in the interface) pools everything
due across every shared deck, then adds new cards up to 20 a day,
drawing those new cards from the learner's weakest categories first.
Sharing a deck¶
FlashcardDeck.is_shared is the only visibility switch for studying: a
learner may study a deck if it is shared, or if they are a moderator. There is
no per-learner deck ACL — sharing is binary and site-wide once toggled.
A deck generated from an article starts unshared, so an educator reads it before anybody studies it.
Editing a deck is a different question entirely and is grant-based, not sharing-based. See Grants.