visual-data-dictionary

Generate an interactive HTML data dashboard driven by an LLM-inferred JSON Schema data dictionary from CSV files.

3.8k|108|Updated Dec 11, 2020
One-click install
npx skills add https://github.com/dathere/qsv --skill visual-data-dictionary
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: visual-data-dictionary
Source: https://github.com/dathere/qsv/tree/main/.claude/skills/visual-data-dictionary
Command: npx skills add https://github.com/dathere/qsv --skill visual-data-dictionary

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Turning a raw CSV into a documented, explorable dashboard normally requires manual data cleaning, schema writing, and chart configuration. This Skill automates that pipeline: it cleans null sentinels, infers a JSON Schema data dictionary with an LLM, and renders a self-contained HTML Data Schematic with the dictionary embedded beside the charts.

Core Features & Use Cases

  • Dictionary-driven dashboards: Runs qsv describegpt to infer roles, concepts, and labels per column, then renders a qsv viz smart dashboard whose panels are chosen from that dictionary.
  • Data cleaning first: Uses qsv denull to blank null sentinels so numeric columns chart as numbers, with an optional curses TUI (edit_dictionary.py) to hand-correct the dictionary before rendering.
  • Optional GeoJSON binning and guided tour: Bins rows into GeoJSON regions via point-in-polygon mapping and refines an audience-targeted guided tour narration using a browser-automation pass.
  • Use Case: Given a city 311 complaints CSV, produce a single shareable HTML file with KPI tiles, charts, a choropleth map, an embedded searchable data dictionary, and a guided tour explaining each panel.

Quick Start

Use the visual-data-dictionary skill to build a documented interactive dashboard from my data.csv file.

Frequently Asked Questions about visual-data-dictionary

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create a data dictionary dashboard from a CSV file?

Run the visual-data-dictionary workflow: clean nulls with qsv denull, infer a JSON Schema dictionary with qsv describegpt, then render with qsv viz smart using the dictionary. The output is a self-contained HTML file with charts and an embedded dictionary drawer.

What LLM endpoints work with qsv describegpt?

Any OpenAI-compatible endpoint works, including local servers like LM Studio on port 1234 or ollama on port 11434, plus hosted APIs configured via QSV_LLM_BASE_URL or API key environment variables. The skill probes local servers and lists available models before generating.

Can I edit the inferred data dictionary before rendering the dashboard?

Yes, the included edit_dictionary.py curses TUI lets you adjust role, concept, label, description, and aggregation per column with a live routing preview. It must run in your own terminal since it requires a real TTY, and changes are saved back to the same schema file.

Does the dashboard support mapping CSV rows to GeoJSON regions?

Yes, qsv viz smart bins rows into GeoJSON regions using point-in-polygon testing when you pass --geojson with a feature id key. The data must contain latitude and longitude columns, and the skill includes a script to discover a unique, meaningful feature id key.

Why are some columns skipped in the rendered dashboard?

qsv viz smart skips columns whose inferred role or concept does not map to a chartable panel, such as identifiers or unresolved columns, and reports them on stderr. Editing the dictionary's role and concept fields and re-rendering fixes misrouted columns without re-calling the LLM.