
Visualization
This one handles the full workflow for turning data into charts: it generates or reuses SQL (calling the sql-expert skill if needed), validates the query, then outputs a chart-spec JSON block that the client renders automatically. It picks chart types based on explicit user requests first (line, bar, pie, timeseries), then falls back to analyzing the SQL structure. The mandatory validation step with retry logic is solid, it prevents broken queries from reaching the UI. One thing to watch: it's opinionated about legend placement and values arrays, which keeps charts consistent but might feel rigid if you want custom layouts. Works well when you need reliable visualizations without manual chart configuration.
- GitHub stars
- 320
- last updated
- May 14, 2026
Install
$ npx -y skills add frankchen021/datastoria --skill visualization --agent claude-codeInstalls into .claude/skills of the current project.
Files
WORKFLOW (MANDATORY ORDER)
a) Generate or obtain SQL:
- CHECK CONTEXT FIRST: If valid SQL exists in the context (explicitly provided by the user or from a previous message), USE IT DIRECTLY and skip to step (b).
- IF NO SQL FOUND: You must generate it.
- Dependency: Valid SQL generation REQUIRES the
sql-expertskill. - Action: Check if
sql-expertskill is loaded.- If NOT loaded: Call the
skilltool with['sql-expert']IMMEDIATELY. Do not proceed to generate SQL until the skill is loaded. - If ALREADY loaded: Generate the SQL strictly following the rules in the
sql-expertskill (including Schema Discovery, Schema Fidelity, ProfileEvents handling, and Performance Optimization).
- If NOT loaded: Call the
- Dependency: Valid SQL generation REQUIRES the
- For
system.query_logvisualization requests: Do NOT callsearch_query_log. Load theclickhouse-system-queriesskill, then loadreferences/system-query-log.mdviaskill_resource, generate the SQL, and validate it.
Sponsors
Details
- Repository
- github.com/frankchen021/datastoria
- Categories
- Data Science & ML, Design & UI/UX
- First seen
- Jun 11, 2026