A modern, FSRS-powered spaced repetition plugin that lives inside your notes.
No separate app. No manual data export. Write, tag, and study directly where your knowledge lives.
Desktop and mobile · LaTeX math support · Learning analytics · Custom study sessions
Most spaced repetition tools require leaving your knowledge base, exporting notes, and managing a secondary database. Lemma embeds spaced repetition directly in Markdown.
Notes are decks. Add
#flashcardsto any note, write cards in plain Markdown, and let FSRS handle scheduling.
| Feature | Lemma | Anki | Standard SR Plugins |
|---|---|---|---|
| Native Markdown workflow | Yes | No | Yes |
| FSRS scheduling | Yes | Yes (addon) | Partial |
| Mobile support | Yes | Yes | Varies |
| LaTeX / rich Markdown | Yes | Yes | Varies |
| Cross-device sync (CouchDB) | Yes | Yes | No |
| Custom study sessions | Yes | Yes | No |
| Zero file clutter | Yes | N/A | Varies |
| Open source | Yes | Yes | Yes |
Lemma uses FSRS (Free Spaced Repetition Scheduler), a modern scheduling algorithm developed from cognitive science research. It models memory stability and retrievability based on your individual recall patterns.
Write flashcards directly in any Markdown note without imports or app switching.
---card--- ^fsrs-abc123
What is the powerhouse of the cell?
---
**Mitochondria** — produces ATP through cellular respiration.The ==c1::mitochondria== is the powerhouse of the ==c2::cell==.Each cloze deletion is scheduled independently.
View all decks in a single overview with due counts, new cards, and total reviewed.
Filter review queues by tag, card state (new, learning, due), or configure a card limit for targeted study and exam preparation.
Analyze learning progress with retention curves, card maturity distribution, interval histograms, 30-day activity, and 7-day forecast charts.
Responsive review interface designed for desktop and mobile, with safe-area insets and touch-optimized navigation.
Review anatomy and technical diagrams in place without vertical shifting. Diagram cards automatically detect image pairs, swapping masks in the exact same viewport position with tap/peek toggling.
Type answers directly into the review card with instant character and keyword difference highlighting before revealing FSRS rating buttons.
Interactive creation modals with dropdown format selection, live syntax previews, and automated deck tagging so you never have to memorize card syntax.
Connect to self-hosted CouchDB or Cloudant instances to sync review history seamlessly across devices.
- Install from Community Plugins: search for Lemma.
- Add
#flashcardsto any note's frontmatter or inline:
---
tags: [flashcards]
---- Write a card:
---card--- ^my-first-card
What is spaced repetition?
---
A learning technique that schedules reviews at increasing intervals to maximize long-term retention.- Open the Lemma dashboard from the status bar or Command Palette (Open dashboard).
Full syntax documentation: FLASHCARD_GUIDE.md
Lemma supports seven card and study formats:
Multi-line format with full Markdown, LaTeX math blocks, and code formatting.
---card--- ^basic-001
What is the function of the ribosome?
---
Protein synthesis via translation of mRNA.Fast atomic flashcards on a single line.
What is the capital of Japan?::Tokyo ^single-001Generates a two-way recall card where the prompt and answer are tested in reverse.
Mitochondria:::Powerhouse of the cell ^rev-001Hide one or more concepts in context. Multiple cloze IDs (c1, c2) schedule independent review items.
The ==c1::Ebbinghaus== forgetting curve shows memory decays without ==c2::spaced repetition==. ^cloze-001Swaps occluded diagrams with revealed answers in-place without vertical displacement. Tap the image or press Space / P to peek back and forth between masks before rating.
![[anatomy-masked.png]]::![[anatomy-revealed.png]] ^occlusion-001Prompts you to type your answer and provides instant character and keyword comparison before revealing ratings.
?type What is the SI unit of electric current?::Ampere ^typein-001Or in block format:
---card--- ?type ^typein-002
What is the powerhouse of the cell?
---
MitochondriaApply FSRS spaced repetition to entire notes by adding #review to the frontmatter or body.
---
tags: [review]
---
# Quantum Mechanics OverviewTip
Add a ^block-id to cards so review history persists across content edits.
| Shortcut / Gesture | Action |
|---|---|
Space / Enter |
Reveal answer |
Space / P / F |
Toggle peek between question and answer masks (image cards) |
1 |
Again (reset learning steps) |
2 |
Hard |
3 |
Good |
4 |
Easy |
Esc |
Exit session |
Swipe left |
Rate Again |
Swipe down |
Rate Hard |
Swipe right |
Rate Good |
Swipe up |
Rate Easy |
| Command | Description |
|---|---|
Create card (guided modal) |
Open guided creator modal with type selector and live preview |
Create new deck |
Create a new note pre-tagged with the deck tag |
Tag current note as flashcard deck |
Add the deck tag to the active note |
Add a new flashcard |
Insert a card template with a pre-generated block ID |
Add a single-line card |
Insert a single-line card template |
Add a reversed card |
Insert a bidirectional card template |
Add a cloze card |
Insert a cloze deletion template |
Create cloze from selection |
Wrap selected text in cloze syntax |
Add a type-in card |
Insert a type-in card template |
Add a type-in single-line card |
Insert a single-line type-in template |
Open dashboard |
Open the Lemma deck overview |
Sync now |
Trigger a manual CouchDB sync |
Check sync status |
View sync connection status |
Review due notes |
Start whole-note review session |
Reset all card progress |
Reset all scheduling data |
| Setting | Description |
|---|---|
| Deck tag | Tag identifying deck files (default: flashcards) |
| Max new cards/day | Daily limit on new card introductions |
| Max reviews/day | Daily limit on review cards |
| Review font size | Font size in the review modal |
| FSRS parameters | Algorithm weights and retention target configuration |
| PouchDB storage | IndexedDB storage engine for collections |
| Sync | CouchDB connection and credential settings |
- Open Settings → Community plugins
- Click Browse and search for Lemma
- Select Install, then Enable
- Download
main.js,manifest.json, andstyles.cssfrom the latest release - Copy the files into:
<vault>/.obsidian/plugins/lemma-flashcards/ - Reload Obsidian and enable the plugin under Settings → Community plugins
If you find Lemma helpful for your studies and daily knowledge retention, you can support development:
- Buy Me a Momo
- Star the repository on GitHub
Contributions, bug reports, and feature requests are welcome.
- Issue tracker: GitHub issues
- Pull requests: Open a pull request against
main
ISC License — see LICENSE for details.




