Anki Reflect – Session & Weekly Reflection

AnkiWeb addon 809246272

Generates an HTML dashboard summarizing daily, weekly, or monthly study sessions with retention, FSRS metrics, SVG growth graphs, narrative insights, and optional LLM-generated reflections from local collection data.
AI-generated summary; may contain mistakes.

aiexportfsrsstatistics

Open on AnkiWeb GitHub Find alternatives

AnkiWeb

Votes
1 (👍 1 · 👎 0)
Updated
2026-05-22
Anki versions
2.1.1~
License
MIT (from the headers of the Python files)
Virus scan
No ClamAV match A match does not prove malware. No match does not prove that the code is safe.
Languages
Python, Jinja, CSS, JSON
Description language
en

Maintenance

active

  • Last update or commit: 2026-05-22 (163 days before the snapshot).
  • Commits in the last year: 2.
  • Issues: 0 open, 0 closed.
  • Pull requests: 0 open, 0 merged.

Will it work on my Anki?

Version branches
Min AnkiMax AnkiUpdated
2.1.1+2026-05-22
History across monthly snapshots

Loading…

Similar addons

LanguageForge

Tracks daily reading, listening, speaking, and writing practice, sets monthly goals, organizes learning resources, visualizes fluency balance with radar charts, and supports separate profiles for multiple languages.

statisticsprogress-trackingappearance

1 votes 21% approval 👍 1 · 👎 0 ⭐ 2 Anki 23.10~ Updated 2025-11-20
Studylitics - Advanced Anki Analytics Dashboard

Provides a detailed analytics dashboard for Anki review history, including heatmaps, retention, consistency, efficiency scores, trends, session and lapse analysis, and time-range filters.

statistics

1 votes 21% approval 👍 1 · 👎 0 Anki 2.1.1~ Updated 2026-04-01
Deck Time 📊

Tracks study time per deck with daily, weekly, monthly, and yearly statistics, detailed tables, filterable deck selection, interactive charts, and HTML export.

exportstatisticsprogress-tracking

5 votes 57% approval 👍 5 · 👎 0 Anki 25.07.5~ Updated 2025-12-01
Sidecar AI

Embeds an AI tutor and study dashboard into Anki's review screen, generating explanations, quizzes, comparisons, and study guides from cards and uploaded files.

aisync-integrationreview-flowshortcutsquiz

1 votes 21% approval 👍 1 · 👎 0 Anki 24.04~ Updated 2026-10-23

Description

Anki Reflect – Narrative study session & FSRS insights

Anki Reflect turns your daily or weekly reviews into a rich, narrative report you can actually read and learn from. It analyzes your local collection and generates a beautiful HTML dashboard with key stats, FSRS metrics, and growth graphs – all directly inside Anki.

Anki Reflect report screenshot Anki Reflect report screenshot

Anki Reflect

🔍 What it shows

  • Session overview: Cards reviewed, time spent, average seconds per card, and comparison to the previous period.
  • Retention & lapses: Mature retention %, correct vs total counts, “Again” rate, and a clean SVG retention ring.
  • FSRS deep dive: Median stability, mean difficulty, estimated total knowledge (expected number of cards you’d recall), and struggling‑card percentage.
  • Growth charts: Pure‑Python SVG graphs for mature card growth, daily review volume, and stability distribution – no extra libraries or compilers required.
  • Narrative reflections: Conversational text that explains what the numbers mean for your learning, plus an optional LLM mode if you add an OpenAI/Anthropic API key.

▶️ How to use

  1. Install the add‑on and restart Anki.
  2. Open Tools → Generate Session Reflection.
  3. A dark‑mode “glassmorphic” report opens, summarizing today, this week, or this month depending on your config.

⚙️ Configuration

Open Tools → Add-ons → Anki Reflect → Config to adjust:

  • report_scope: today, week, or month
  • mature_threshold_days: when a card counts as “mature”
  • graph_theme: dark or light
  • llm_enabled and provider/model/API key for optional AI‑generated narrative paragraphs

Everything runs on your local data; LLM calls are only used if you explicitly enable them and provide a key.

README

Anki Reflect

A narrative-driven Anki add-on that generates rich, personalized study session reflections — with FSRS metrics, retention trends, and animated growth graphs.

Anki Reflect hooks directly into your local database (mw.col.db) to analyze your daily or weekly study sessions, generating conversational insights and high-quality charts completely offline with zero binary dependencies.


✨ Features

Feature Details
📊 Session Overview Cards reviewed, time spent, avg speed, comparison to previous period.
🎯 Retention Analysis Mature card retention %, correct/total breakdown, and a visual HTML/SVG ring chart.
🔁 Lapse Tracking "Again" press rate with contextual narrative commentary.
🧠 FSRS Metrics Median stability, mean difficulty, Estimated Total Knowledge (expected recall count), and struggling card %
📈 Growth Graphs Pure Python SVG graphs (Mature Card Growth, Daily Review Volume, FSRS Stability Distribution). Fully responsive and crisp on Retina/High-DPI screens without requiring matplotlib or compiling C-extensions.
💡 Narrative Insights Offline, deterministic Python template engine generating conversational, personalized reflections.
🤖 Optional LLM Plug in an OpenAI or Anthropic key in the config to receive AI-generated narrative reflections.
⬇️ Export Save your study reflections as a standalone HTML file.

🚀 Installation & Setup

Development Setup (from source)

If you've cloned this repository directly into your Anki add-ons folder, or have symlinked it:

# Symlink this folder into Anki's add-ons directory
ln -s "$(pwd)" ~/Library/Application\ Support/Anki2/addons21/anki_reflect
# (Linux: ~/.local/share/Anki2/addons21/anki_reflect)
# (Windows: %APPDATA%\Anki2\addons21\anki_reflect)

Restart Anki to load the add-on.


🎮 Usage

Once loaded, go to Tools → Generate Session Reflection in your Anki menu.

The report will display in a beautiful, dark-mode glassmorphic interface:

  • Session Overview — key stats at a glance
  • Retention & Lapses — accuracy and lapse rate commentary
  • Metric Breakdown — detailed comparison table of current vs previous sessions
  • FSRS Insights — deep dive into stability distributions and knowledge accumulation
  • Mature Card Growth & Volume — clean, responsive timeline charts
  • Reflection & Insights — final motivational commentary

⚙️ Configuration

Settings can be changed by going to Tools → Add-ons → Anki Reflect → Config:

{
  "report_scope": "today",
  "mature_threshold_days": 21,
  "graph_theme": "dark",
  "llm_enabled": false,
  "llm_provider": "openai",
  "llm_api_key": "",
  "llm_model": "gpt-4o-mini"
}
  • report_scope: "today", "week", or "month".
  • mature_threshold_days: The interval threshold (in days) at which a card is classified as mature.
  • graph_theme: Choose "dark" or "light" to match your system aesthetics.
  • llm_enabled: Enable to generate narrative paragraphs via OpenAI/Anthropic. Requires a valid API key.

See config.md for more details.


🏗️ Structure

.
├── __init__.py          # Entry point — registers menu action & hooks
├── manifest.json        # Anki add-on metadata
├── config.json          # Default user config
├── config.md            # Config documentation (rendered inside Anki)
├── _version_info.py     # Version specification
├── data/
│   ├── queries.py       # SQL queries targeting mw.col.db
│   └── fsrs_metrics.py  # FSRS parsing and stats calculation
├── report/
│   ├── builder.py       # Report orchestration pipeline
│   ├── graphs.py        # Offline Python SVG graph generator
│   ├── insights.py      # Conditional narrative engine & LLM api client
│   └── templates/
│       ├── report.html.j2 # Jinja2 HTML report template
│       └── styles.css    # Premium glassmorphic styles
└── ui/
    ├── menu.py          # Action hooks
    └── dialog.py        # PyQt WebEngine window

📜 License

MIT © Mohammad Hemmati