← ClaudeAtlas

obsidian-heatmaplisted

Build activity heatmaps in Obsidian — GitHub-style year overview via the Heatmap Calendar plugin (Richardsl), and custom DataviewJS heatmaps (weeks × days, rows × cols matrices, project activity grids) when the plugin is not enough. Use whenever the user asks about heatmaps, calendar visualizations, streaks, "did I do X every day", year-in-pixels, contribution graphs, GitHub-style activity views, daily-log visualizations, or wants to render any time-based intensity grid in a note.
lexbritvin/obsidian-skills-pack · ★ 2 · AI & Automation · score 75
Install: claude install-skill lexbritvin/obsidian-skills-pack
# Obsidian heatmaps Two complementary tools cover almost every heatmap need in Obsidian: 1. **Heatmap Calendar plugin** (Richardsl) — GitHub-style **year overview**, one call from a `dataviewjs` block. Handles 365-day grid, month labels, weekday rows, today border, color gradients, click/hover. **Use this first** when the question is "did I do X on each day of the year". 2. **Custom DataviewJS heatmaps** — anything the plugin cannot draw: weeks × 7 days for the last N weeks, rows × cols matrix (e.g. metrics × weeks), rows × N days (projects × dates), custom score functions, multi-metric tooltips, streaks. The plugin draws **a year**; custom DOM draws **whatever shape you need**. Pick the plugin first; drop to custom only when the year frame is wrong or you need a non-calendar shape. ## Decision: which heatmap | Need | Tool | |---|---| | One year, one metric, "did I do X today" | Plugin | | One year, two-three metrics overlaid by color | Plugin (multi-color entries) | | Last N weeks (e.g. 14), GitHub-contribution shape | Custom DataviewJS — weeks × 7 days | | Rows × cols matrix (metrics × weeks, projects × months) | Custom DataviewJS — grid | | Rows × days (projects × dates with sticky row labels) | Custom DataviewJS — activity grid | | Cell holds an emoji / number / link, not just intensity | Plugin (`content` field) or custom | | Multiple years on one screen | Two plugin blocks, one per `year` | | "Cell is a task you can click" | Custom DOM with click handlers | If th