Search...Search plugins and themes...
⌘K
Sign in
  • Get started
  • Download
  • Pricing
  • Enterprise
  • Account
  • Obsidian
  • Overview
  • Sync
  • Publish
  • Canvas
  • Mobile
  • Web Clipper
  • CLI
  • Learn
  • Help
  • Developers
  • Changelog
  • About
  • Roadmap
  • Blog
  • Resources
  • System status
  • License overview
  • Terms of service
  • Privacy policy
  • Security
  • Community
  • Plugins
  • Themes
  • Discord
  • Forum / 中文论坛
  • Merch store
  • Brand guidelines
Follow us
DiscordTwitterBlueskyThreadsMastodonYouTubeGitHub
© 2026 Obsidian

Pomodoro Flashcards

blursedperfblursedperf27 downloads

Create and study Markdown flashcards using SM-2 spaced repetition with an integrated Pomodoro focus timer.

Add to Obsidian
  • Overview
  • Scorecard
  • Updates10

An Obsidian plugin that combines Markdown-based Spaced Repetition (SM-2) flashcards with an integrated Pomodoro focus timer. Study smarter with focused intervals, automatic rest reminders, and spaced recall scheduling directly inside your vault.

Why this suite exists

I created this suite of Obsidian plugins and the DoomEsque theme so that I can be 100 percent certain there are no network calls or traffic: everything runs 100 percent offline, so I can use Obsidian for my notes in open-book law exams.

  • Nothing in the suite makes a network request. Every test run checks the source, built bundle and styles with scripts/offline-audit.mjs, which fails on any network API (fetch, XMLHttpRequest, WebSocket, requestUrl, ...).
  • Obsidian itself has separate online features. For a fully offline setup, also turn off automatic updates, Sync and Publish, and don't browse community plugins during the exam.

The suite:

  • DoomEsque (theme)
  • DoomEsque Settings
  • Filetypes
  • Inline Autocomplete
  • Inline Schema Expander
  • Links in New Tabs
  • Pomodoro Flashcards
  • Task Docket
  • Whole-Tree Search

Features

1. Markdown-First Flashcard Syntax

Write flashcards naturally in any note without disrupting your writing flow:

  • Single-line cards:

    Question :: Answer
    
  • Bidirectional cards (generates both forward and reverse flashcards):

    Mitochondria ::: Powerhouse of the cell
    

    Separators need a space on both sides and must sit outside [...], (...) and inline code, so inline fields such as held:: appeal allowed or [court:: HL] are never turned into cards. A line may start with a tag (#torts Duty of care :: ...).

  • Multi-line cards (? separator):

    What is the time complexity of binary search?
    ?
    $O(\log n)$ because the search space is halved at each comparison.
    
  • Q/A block cards:

    Q: What is memoization?
    A: An optimization technique that stores the results of expensive function calls.
    
  • Cloze deletions (fill in the blank). Every deletion number in a paragraph becomes one card; deletions sharing a number are hidden together, and the rest of the paragraph stays visible as context:

    Negligence requires {{c1::a duty of care}}, {{c2::breach}} and {{c3::damage::what kind of harm?}}.
    

    The text after a second :: is a hint shown in the blank. Highlights can be clozes too (one card per ==highlight==): turn on Highlights are cloze deletions, add cloze: true to a note's properties, or tag a paragraph #cloze. Use Wrap selection in cloze deletion to wrap selected text in the next free number, or (same card as the last cloze) to add it to the latest card.

  • Automatic case cards for studying law. Describe a case on one line (the format Inline Schema Expander writes):

    Donoghue v Stevenson #case-law [court:: HL] [year:: 1932] [ratio:: A manufacturer owes a duty of care to the consumer]
    

    or in a case note tagged case-law in its properties, with fields in its properties or on Field:: value lines (Ratio:: ..., - **Held**:: ...). Recognised fields are ratio (or principle, rule), held (holding, decision, outcome), issue, facts, court, year, citation and case/name. Each filled-in field becomes a card (What is the ratio of Donoghue v Stevenson?, What was held in...?, Which court decided...?), and ratio and facts are also reversed (Which case established this principle?). The case name is the text on the line, then the case field, then the heading above the line, then the note's name. Empty fields are skipped, so a freshly expanded template makes no cards until you fill it in. Change the tag or turn off reverse cards under Case cards in settings.

  • Flexible deck organization: Organize cards into decks using frontmatter (deck: Biology), heading tags (## Genetics #deck/Genetics), or inline tags (#deck/Algorithms).

  • History that follows your notes: Review history is kept when you rename or move a note or folder, and when you edit a card's question.

  • Quick-create modal: Capture cards on the fly via the command palette, ribbon button, or selected note text (Create flashcard from selected text).

2. SM-2 Spaced Repetition Scheduling

Optimize recall with the proven SuperMemo-2 spaced repetition algorithm:

  • Grade recall after each card: Again (1), Hard (2), Good (3 / Space), or Easy (4).
  • Live interval previews displayed directly on each rating button (<10m, 1d, 6d, 10d).
  • Seamlessly toggle between Due cards (spaced repetition) and Cram mode (all cards).

3. Integrated Pomodoro Focus Experience

  • Embedded circular timer: SVG countdown ring right in the flashcard view.
  • Break mode rest screen: Enforces genuine cognitive recovery by pausing card reviews during short and long breaks (with an optional override button if you prefer to continue).
  • Status bar indicator (desktop & tablet): Real-time countdown and due card count (🍅 25:00 · 🗂️ 12 due). Left-click opens the study view; right-click toggles timer start/pause.
  • Synthesized audio chimes: Pure Web Audio API chimes signal phase transitions with zero external audio downloads or network access.

4. Mobile Ergonomics

  • Tappable card stage: Tap the card or the large primary action button to reveal the answer with zero sidebar gesture interference.
  • Tactile haptics: Subtle vibrations on card flips, SM-2 ratings, and timer transitions.
  • Space-saving compact timer: Collapsible timer bar on mobile devices to preserve maximum vertical space for reading flashcards.
  • Safe-area & virtual keyboard aware: 16px inputs prevent unwanted iOS auto-zooming, scrollable modal forms, and 44px+ touch targets throughout.

Privacy & Security

  • 100% Local & Offline: This plugin makes zero network calls. It does not contact external servers or load remote assets.
  • Offline audit: Every test run checks the source, built bundle and styles with scripts/offline-audit.mjs, which fails on any network API (fetch, XMLHttpRequest, WebSocket, requestUrl, workers, dynamic import(), ...), dynamic code (eval, new Function), raw HTML injection, or remote CSS (@import, non-data: url()).
  • Remote content is never loaded: Before a card is rendered, remote images (![](https://...)), raw HTML that loads resources (<img>, <iframe>, <video>, ...) and embeds of other notes are neutralised, so studying a card never makes a network request. Embeds of local images, audio, video and PDFs still show.
  • Zero Telemetry: No usage metrics, tracking pixels, crash analytics, or user identifiers.
  • Vault-Confined Storage: All flashcards live directly in your Markdown notes. Review intervals and statistics are stored locally in your vault's .obsidian/plugins/pomodoro-flashcards/data.json.
  • Safe DOM Rendering: Follows Obsidian security best practices with no eval() or unsanitized innerHTML. Card contents are rendered securely through Obsidian's native MarkdownRenderer.

Installation

Community Plugins (Recommended)

  1. Open Obsidian Settings → Community plugins.
  2. Ensure Restricted mode is turned off.
  3. Click Browse and search for Pomodoro Flashcards.
  4. Click Install, then Enable.

Manual Installation

  1. Download manifest.json, main.js, and styles.css from the latest GitHub Release.
  2. Create a folder named pomodoro-flashcards inside your vault's .obsidian/plugins/ directory.
  3. Copy manifest.json, main.js, and styles.css into that folder.
  4. Reload Obsidian and enable Pomodoro Flashcards under Settings → Community plugins.

Development

# Install dependencies
npm install

# Run unit tests
npm test

# Build production bundle
npm run build

License

MIT © 2026 blursedperf

HealthExcellent
ReviewSatisfactory
About
Study flashcards with an integrated Pomodoro timer and SM-2 spaced repetition directly in your vault. Create Markdown-first cards inline, organize decks with frontmatter/headings/tags, grade recall to schedule intervals, and use the embedded timer, enforced breaks, and audio cues to maintain focus. (Part of a suite of plugins I put together because I use obsidian as my notes in open book law exams and need to be confident of strictly zero network activity)
FlashcardsReviewStatus bar
Details
Current version
1.0.9
Last updated
19 hours ago
Created
7 days ago
Updates
10 releases
Downloads
27
Compatible with
Obsidian 1.7.2+
Platforms
Desktop, Mobile
License
MIT
Report bugRequest featureReport plugin
Author
blursedperfblursedperf
GitHubblursedperf
  1. Community
  2. Plugins
  3. Flashcards
  4. Pomodoro Flashcards

Related plugins

LearnKit

A native study system for your Obsidian vault. LearnKit turns notes into durable knowledge with flashcards, spaced repetition, tests, and more.

CBT Exam Simulator

A robust, offline-first CBT exam simulator using FlashQuiz format.

Spaced Repetition

Fight the forgetting curve by reviewing flashcards & entire notes.

Flashcards

Anki integration.

WebNovel Assistant

An all-in-one writing studio for novel and story writers. Features accurate word count tracking, daily goals, story timeline board, plot foreshadowing manager, chapter corkboard, and character lore gr

Custom Note Width

Effortlessly change the line width of each note individually. Provides multiple ways to customize the experience, making it both efficient and user-friendly to adjust line widths.

Day Planner OG

Day planning from a simple task list in a Markdown note (bare bones, preserves the features and behavior of the original plugin).

Yanki

Sync flashcards from a folder in your vault to Anki. Pure Markdown syntax. No fuss.

Colored Text

Color the selected texts.

Workspace++

Workspace session manager with a native-feeling UI/UX.