Skip to content

Spaced Repetition

Osmosis uses the Free Spaced Repetition Scheduler (FSRS) for all card scheduling. FSRS is the modern successor to SM-2 (used by classic Anki) and produces more accurate scheduling intervals based on memory research.

Ratings

After revealing a card's answer, rate your recall:

Rating Key Meaning Effect
Again 1 Forgot or wrong Card re-enters learning; interval resets
Hard 2 Recalled with difficulty Shorter next interval
Good 3 Recalled correctly Standard next interval
Easy 4 Instant, effortless recall Longer next interval

Card States

State Description
New Never studied — shown as "new" count in Dashboard
Learning Recently introduced, reviewed at short intervals
Review In long-term rotation, intervals growing
Relearning Previously known but forgotten, back to short intervals

Learning Steps

New and lapsed cards don't leave the session after one look. A card rated Again, or one still working through its learning steps, comes back within the same study session after a short delay — the same behavior as Anki.

Configure the delays in Settings > Osmosis:

Setting Default Applies to
Learning steps 1m, 10m New cards working toward their first real interval
Relearning steps 10m Review cards you rated Again

Enter a comma-separated list of intervals (m for minutes, h for hours). A card advances one step each time you rate it Good or better, and graduates to a normal FSRS interval after the last step. Rating Again sends it back to the first step.

If every remaining card is waiting on a timer, the study modal shows a "Waiting for next card" countdown rather than ending the session. A card's position in the steps is saved with its schedule, so closing the modal mid-session doesn't lose progress.

Tip

Leave the steps short. They exist to give a card a second look while it's still fresh — long steps just stall the session behind a countdown.

Daily Limits

Configure in Settings > Osmosis:

Setting Default Description
Daily new card limit 20 Maximum new cards introduced per day (0 = unlimited)
Daily review card limit 200 Maximum reviews per day (0 = unlimited)

Tip

Start with the defaults. If you're adding many cards at once, consider lowering the new card limit to avoid overwhelming yourself. Review limits rarely need changing.

Data Storage

All scheduling data lives in your markdown files — no external database. Fence cards store it inside the fence itself; line cards store it in the note's frontmatter.

Fence Cards

Scheduling fields are written into the fence metadata:

```osmosis
id: abc123
due: 2026-03-15T00:00:00.000Z
stability: 4.5
difficulty: 5.2
reps: 3
lapses: 0
state: review
last-review: 2026-03-10T00:00:00.000Z

What is the capital of France?
***
Paris
```

Line Cards

Line card schedules are stored in the note's frontmatter under osmosis-schedule, keyed by block ID:

---
osmosis-cards: true
osmosis-schedule:
  os-a1b2c3:
    due: 2026-07-22T10:30:00
    stability: 4.2
    difficulty: 5.1
    lastReview: 2026-07-15T09:12:00
    reps: 3
    lapses: 0
    state: review
    learningSteps: 0
---

The key appears after a card's first review (never at ID-generation time), and writes are debounced — a run of ratings during a study session produces a single frontmatter write, flushed when the session ends. Timestamps are ISO 8601 local datetimes so the source view stays human-readable. Frontmatter is hidden in reading view, and the Properties panel shows the key as a single non-editable property.

Why This Matters

  • No external database — Everything lives in your markdown files
  • Sync just works — Obsidian Sync, iCloud, Dropbox, or any file sync service carries your scheduling data automatically
  • Portable — Your review history travels with your notes
  • Transparent — You can inspect (but shouldn't edit) scheduling data directly

Derived Card Schedules

Bidirectional and cloze cards store scheduling data for each derived card with prefixed keys:

Prefix Card
r- Reverse (bidirectional)
c1- Cloze deletion 1
c2- Cloze deletion 2
c3- Cloze deletion 3, and so on

For example, a bidirectional card might have both due: ... (forward schedule) and r-due: ... (reverse schedule) in the same fence.