Every chart, graph, and metric put to the truth test — right form, honest axes, labeled and legible, accessible beyond color, and numbers that match their source.
Free & open · no signup · read-only — it ends by asking · nothing leaves your machine
You are working inside this repo. Mission: audit every chart, graph, gauge, and headline metric the product renders — and find the ones that pick the wrong form, distort the scale, or leave the reader unable to tell what they are looking at.
Read-only pass. Render the charts in the running app or read the chart configs, data-shaping code, and components; your only write is the report file.
Phase 2 sweeps the codebase through every one of these, citing file and line for each finding.
does the chart type fit the comparison (trend, part-to-whole, distribution, correlation); the pie with twelve slices
truncated or dual y-axes, inconsistent bins, log without saying so; the axis that turns a wiggle into a cliff
the drawn value matches the source data; rounding, unit, and aggregation that quietly mislead
titles, axis labels, units, and legends present; can a stranger read it with no caption
categorical hues distinguishable and colorblind-safe, sequential ramps actually ordered, meaning never by color alone
gridlines, 3D, shadows, and decoration competing with the data; the ink spent on chrome
no-data, still-loading, single-point, and extreme-value states; the chart that breaks on zero rows
tooltips, hover, and legend toggles that work by keyboard and touch; the chart clipped on a phone
One structured report at the repo root — or in reports/, if you keep one — the same shape every time, ready for a teammate — or the optional Studio — to act on.
Every Goal Prompt follows the same four steps, so results are consistent and repeatable — no matter which one you run.
List every visualization.
Cite the chart and its config or component for every finding.
Rank by decisions-at-risk.
Create DATAVIZ.md at repo root.
Copy it and paste it into your agent inside the repo you want checked.
Install the goal plugin once — two commands — then just type /goal:data-visualization.
/plugin marketplace add GhostlyGawd/goal-prompts/plugin install goal@goal-promptsOr install only this Goal Prompt as /goal-data-visualization:
curl -fsSL https://goal-prompts.vercel.app/install | BRIEF=131 shLet an agent fetch it mid-conversation, or pull the raw Goal Prompt by URL.
https://goal-prompts.vercel.app/raw/131.mdNothing hidden — this is the whole Goal Prompt, verbatim. Read it in a minute, edit it, or copy it as-is.
# Goal: Data Visualization Audit You are working inside this repo. Mission: audit every chart, graph, gauge, and headline metric the product renders — and find the ones that pick the wrong form, distort the scale, or leave the reader unable to tell what they are looking at. Read-only pass. Render the charts in the running app or read the chart configs, data-shaping code, and components; your only write is the report file. ## Phase 1 — Inventory the visuals - List every visualization: line, bar, area, pie/donut, scatter, table-as-chart, sparkline, gauge, big-number stat, map, heatmap. - For each, note the question it answers, the data behind it, and the library or code that draws it. - Capture the axes, scales, color mapping, and labels each one actually ships with. ## Phase 2 — Audit through 8 lenses Cite the chart and its config or component for every finding. 1. **Right form for the question** — does the chart type fit the comparison (trend, part-to-whole, distribution, correlation); the pie with twelve slices 2. **Honest scale** — truncated or dual y-axes, inconsistent bins, log without saying so; the axis that turns a wiggle into a cliff 3. **Encodes the truth** — the drawn value matches the source data; rounding, unit, and aggregation that quietly mislead 4. **Legibility** — titles, axis labels, units, and legends present; can a stranger read it with no caption 5. **Color & accessibility** — categorical hues distinguishable and colorblind-safe, sequential ramps actually ordered, meaning never by color alone 6. **Data-ink & clutter** — gridlines, 3D, shadows, and decoration competing with the data; the ink spent on chrome 7. **Empty, loading & outliers** — no-data, still-loading, single-point, and extreme-value states; the chart that breaks on zero rows 8. **Interaction & responsive** — tooltips, hover, and legend toggles that work by keyboard and touch; the chart clipped on a phone ## Phase 3 — Curate - Rank by decisions-at-risk: a distorted axis on the metric people act on outranks a cluttered decorative chart. - Separate "wrong form", "misleading", and "unreadable"; fix misleading first — it costs trust. - For each, name the chart, the flaw, and the truer rendering. ## Phase 4 — Report Create `DATAVIZ.md` at repo root: 1. **Chart inventory** — chart · question it answers · form · data source 2. **Findings** — each: lens · chart · what the reader misreads · the fix 3. **Misleading-now** — the distortions to correct first, with the honest version 4. **The palette & defaults** — the shared chart colors, scales, and label rules this codebase should adopt Start the report with today's date. If `DATAVIZ.md` already exists from a previous run, read it first and lead with what changed since. ## Rules - Every finding names the chart and the config or data behind it - A chart that misleads is worse than no chart — correctness before beauty - No charts or data visualizations in this repo? Say so in a one-paragraph null report and stop — a null result is a valid finding. - If a `reports/` directory exists at the repo root, write the report there instead of the root. - Before asking, present the top findings as a ranked list in plain words - Report only — end by asking which charts to fix first
reports/ directory exists at the repo root, write the report there instead of the root.Where the eye actually goes versus where it should — focal points, size and weight and contrast doing real work, and the screens where everything shouts at once.
The type scale, or the lack of one — sizes, weights, line lengths and heights, font loading, and every place text is asked to do a job at the wrong size.
The palette as it actually ships — every hex in the codebase, contrast ratios computed, semantic drift named, and whether dark mode is a theme or an apology.
The spacing scale nobody wrote down — margins and paddings inventoried, grid discipline checked, alignment breaks found, and density judged screen by screen.
Runs inside these playbooks — curated sequences you can launch with one paste: