DecksMD 1.12.2
Released 23 May 2026
Changes
Statistics dashboard — native Obsidian polish
Refactored the Statistics & Insights dashboard so it feels like a built-in Obsidian view instead of a generic web app embedded in one.
Charts adapt to your theme
- Every Chart.js dataset now resolves colors from Obsidian's CSS palette (
--color-blue,--color-green,--color-orange,--color-red,--color-purple) at render time. Switching between light/dark or community themes (Minimal, Dracula, Catppuccin, Things…) recolors the dashboard automatically. - Chart typography inherits
--font-interface, axis labels use--text-muted, gridlines use--background-modifier-border-hover, and tooltips mirror Obsidian's hover popovers (--background-secondary-altbackground,--background-modifier-borderring, no fade-in animation). - Bars get rounded top corners (
borderRadius: 4) and a slimmerbarPercentage: 0.6. The "Cards added" and "Future due" lines are smooth Bezier curves with semi-transparent fills. The X-axis no longer rotates date labels — they sit horizontally and auto-skip to avoid overlap. - The difficulty / retrievability gradient bars are now interpolated between
--color-greenand--color-red, so the heat-map intuition survives any theme.
Review heatmap
- Activity intensity levels (0–4) replaced GitHub's hardcoded greens with opacity tiers built from
--color-green-rgb, so the heatmap matches your theme's accent. - Today's cell uses an inset accent ring (
box-shadow) instead of an outline — no more layout shift on the cell next to it. - Year toggle buttons (
<>) inherit--interactive-normal/--interactive-hoverand--radius-s, matching other Obsidian buttons.
True Retention table
- "Young", "Mature" and "All" rows use
--color-orange,--color-green,--color-bluerespectively — softer than the previous saturated web hues and no longer vibrate in dark mode. - Container border-radius bumped to
--radius-mfor consistency with the stat cards. Row dividers softened to--background-modifier-border-hover. Headers re-styled as muted uppercase labels.
Stat cards
.decks-stat-card,.decks-timeframe-card, and the answer-button stats now share a uniform surface:--background-secondarybackground,--background-modifier-borderborder,--radius-mcorners.- Answer-button cards (Again / Hard / Good / Easy) trade the all-around colored border for a single semantic accent on the left edge, using the same palette as the "Reviews over time" chart.
Under the hood
- New shared module
chartTheme.tscentralizes Chart.js global defaults, a runtime CSS-variable resolver, semi-transparent fill helpers, a color interpolator, and reusable scale/tooltip/dataset option builders. The 10 chart components now compose from this module instead of each owning their own colors, scales, and tooltip styling.
Also on GitHub.