mirror of
https://github.com/ksyasuda/SubMiner.git
synced 2026-02-27 18:22:41 -08:00
60 lines
2.4 KiB
Markdown
60 lines
2.4 KiB
Markdown
---
|
|
id: TASK-40
|
|
title: Add vocab heatmap and comprehension dashboard for immersion sessions
|
|
status: To Do
|
|
assignee: []
|
|
created_date: '2026-02-14 02:06'
|
|
labels:
|
|
- feature
|
|
- analytics
|
|
- immersion
|
|
- visualization
|
|
dependencies:
|
|
- TASK-28
|
|
priority: medium
|
|
---
|
|
|
|
## Description
|
|
|
|
<!-- SECTION:DESCRIPTION:BEGIN -->
|
|
|
|
Build a visual comprehension dashboard that renders per-video "comprehension heatmaps" showing which segments had high lookup density versus segments where the user understood everything without lookups.
|
|
|
|
## Motivation
|
|
|
|
Immersion tracking data (TASK-28) captures lookup counts, words seen, and cards mined per time segment. Visualizing this data gives learners a powerful way to see their progress: early episodes of a show will be "hot" (many lookups), while later episodes should cool down as vocabulary grows.
|
|
|
|
## Features
|
|
|
|
1. **Per-video heatmap**: A timeline bar colored by lookup density (green = understood, yellow = some lookups, red = many lookups)
|
|
2. **Cross-video trends**: Show comprehension improvement across episodes of the same series
|
|
3. **Session summary cards**: After each session, show a summary with key metrics (time watched, words seen, cards mined, comprehension estimate)
|
|
4. **Historical comparison**: Compare the same video rewatched at different dates
|
|
5. **Export**: Generate a shareable image or markdown summary
|
|
|
|
## Data sources
|
|
|
|
- `imm_session_telemetry` (lookup_count, words_seen per sample interval)
|
|
- `imm_session_events` (individual lookup events with timestamps)
|
|
- `imm_daily_rollups` / `imm_monthly_rollups` for trend data
|
|
|
|
## Implementation notes
|
|
|
|
- Could be rendered in a dedicated Electron window or an overlay modal
|
|
- Use canvas or SVG for the heatmap visualization
|
|
- Consider a simple HTML report that can be opened in a browser for sharing
|
|
- Heatmap granularity should match telemetry sample interval
|
|
<!-- SECTION:DESCRIPTION:END -->
|
|
|
|
## Acceptance Criteria
|
|
|
|
<!-- AC:BEGIN -->
|
|
|
|
- [ ] #1 Per-video heatmap renders a timeline colored by lookup density.
|
|
- [ ] #2 Cross-video trend view shows comprehension change across episodes.
|
|
- [ ] #3 Session summary displays time watched, words seen, cards mined, and comprehension estimate.
|
|
- [ ] #4 Dashboard data is sourced from TASK-28 immersion tracking tables.
|
|
- [ ] #5 Visualization is exportable as an image or shareable format.
|
|
- [ ] #6 Dashboard does not block or slow down active mining sessions.
|
|
<!-- AC:END -->
|