/designing-vizro-layouts
Use this skill when designing or building Vizro dashboard layouts — grid configuration, component sizing, filter/parameter placement, selector types, or container patterns. Activate when the user is creating wireframes, defining page structure, placing controls, or sizing charts.
$ npx -y skills add mckinsey/vizro --skill designing-vizro-layouts --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/designing-vizro-layouts
Context preview
The summary Claude sees to decide when to auto-load this skill.
Use this skill when designing or building Vizro dashboard layouts — grid configuration, component sizing, filter/parameter placement, selector types, or container patterns. Activate when the user is creating wireframes, defining page structure, placing controls, or sizing charts.
SKILL.md
designing-vizro-layouts.SKILL.mdname: designing-vizro-layouts
description: Use this skill when designing or building Vizro dashboard layouts — grid configuration, component sizing, filter/parameter placement, selector types, or container patterns. Activate when the user is creating wireframes, defining page structure, placing controls, or sizing charts.
Vizro Layout Guidelines
Core Rules
- Use `type: grid` (not `vm.Layout`). Recommended: **12 columns**, `row_min_height: "140px"`.
- Use `-1` for empty cells. Every component must form a **perfect rectangle** in the grid.
- Place 2–3 charts per row. Full-width only for time-series line charts.
- **Modifying existing layouts**: Replicate the original structure and apply only the technical constraints below. See [layout-guidelines.md](references/layout-guidelines.md) for details.
Component Sizing (12-col grid, 140px rows)
| Component | Columns | Rows | Height | | ----------- | ------- | ---- | --------- | | KPI Card | 2–3 | 1 | 140px | | Small Chart | 4 | 3 | 420px | | Large Chart | 6 | 4–5 | 560–700px | | Table | 12 | 4–6 | 560–840px |
**KPI cards**: Place in the page `Grid` with **equal columns and equal rows** per card (e.g. 4 cards = 3 cols each). Use `-1` for remaining empty cells. See [layout-guidelines.md](references/layout-guidelines.md) for the full KPI count lookup table and YAML examples. Charts need **at least 2–3 rows** to avoid looking squeezed.
Filter Placement
- **Page-level** (left sidebar): filters shared across multiple components
- **Container-level** (above container): filters scoped only to the components inside that container
- Prefer Filters over Parameters. Do not set `targets:` by default — all components containing the specified column are automatically affected. Only set `targets:` when you want to limit which components are affected.
Selectors
**Default**: Just provide the column name to `Filter` or `Parameter` — Vizro auto-selects the appropriate selector based on the data type. Only override when the auto-selected selector doesn't fit:
| Data type | Selector | Example | | ------------- | ----------- | --------------------- | | 2–4 options | RadioItems | Region (N/S/E/W) | | 5+ options | Dropdown | Category (many) | | Numeric range | RangeSlider | Price ($0–$1000) | | Single number | Slider | Year (2020–2025) | | Date | DatePicker | Order date | | Multi-select | Checklist | Status (Active, etc.) |
Deep Dive
Load [layout-guidelines.md](references/layout-guidelines.md) when you need: grid YAML examples (correct vs incorrect), flexible width distributions, container patterns (plain/filled/outlined), visual hierarchy principles, or Vizro platform constraints.
Read more
name: designing-vizro-layouts description: Use this skill when designing or building Vizro dashboard layouts — grid configuration, component sizing, filter/parameter placement, selector types, or container patterns. Activate when the user is creating wireframes, defining page structure, placing controls, or sizing charts.
Vizro Layout Guidelines
Core Rules
- Use `type: grid` (not `vm.Layout`). Recommended: **12 columns**, `row_min_height: "140px"`.
- Use `-1` for empty cells. Every component must form a **perfect rectangle** in the grid.
- Place 2–3 charts per row. Full-width only for time-series line charts.
- **Modifying existing layouts**: Replicate the original structure and apply only the technical constraints below. See [layout-guidelines.md](references/layout-guidelines.md) for details.
Component Sizing (12-col grid, 140px rows)
| Component | Columns | Rows | Height | | ----------- | ------- | ---- | --------- | | KPI Card | 2–3 | 1 | 140px | | Small Chart | 4 | 3 | 420px | | Large Chart | 6 | 4–5 | 560–700px | | Table | 12 | 4–6 | 560–840px |
**KPI cards**: Place in the page `Grid` with **equal columns and equal rows** per card (e.g. 4 cards = 3 cols each). Use `-1` for remaining empty cells. See [layout-guidelines.md](references/layout-guidelines.md) for the full KPI count lookup table and YAML examples. Charts need **at least 2–3 rows** to avoid looking squeezed.
Filter Placement
- **Page-level** (left sidebar): filters shared across multiple components
- **Container-level** (above container): filters scoped only to the components inside that container
- Prefer Filters over Parameters. Do not set `targets:` by default — all components containing the specified column are automatically affected. Only set `targets:` when you want to limit which components are affected.
Selectors
**Default**: Just provide the column name to `Filter` or `Parameter` — Vizro auto-selects the appropriate selector based on the data type. Only override when the auto-selected selector doesn't fit:
| Data type | Selector | Example | | ------------- | ----------- | --------------------- | | 2–4 options | RadioItems | Region (N/S/E/W) | | 5+ options | Dropdown | Category (many) | | Numeric range | RangeSlider | Price ($0–$1000) | | Single number | Slider | Year (2020–2025) | | Date | DatePicker | Order date | | Multi-select | Checklist | Status (Active, etc.) |
Deep Dive
Load [layout-guidelines.md](references/layout-guidelines.md) when you need: grid YAML examples (correct vs incorrect), flexible width distributions, container patterns (plain/filled/outlined), visual hierarchy principles, or Vizro platform constraints.
Vizro is a low-code toolkit for building high-quality data visualization apps.
Repo: mckinsey/vizro
Other skills on vizro.
- /dashboard-build
Use this skill to build, implement, and test Vizro dashboards (Phase 2). Activate when the user wants to create a working app, says "just build it", or has data ready for implementation. Requires spec files from the dashboard-design skill (Phase 1), or user confirmation to skip
Open skill - /dashboard-design
Use this skill first when the user wants to design or plan a dashboard, especially Vizro dashboards. Enforces a 3-step workflow (requirements, layout, visualization) before implementation. Activate when the user asks to create, design, or plan a dashboard. For implementation,
Open skill - /selecting-vizro-charts
Use this skill when choosing chart types, applying Plotly Express conventions, configuring colors, building KPI cards, or adding tables (AG Grid) to Vizro dashboards. Activate when the user asks which chart fits their data, needs custom chart functions, wants to set colors or
Open skill - /wiring-vizro-actions
Use this skill when adding cross-filter, cross-highlight, drill-through, or data export interactions to a Vizro dashboard — both for choosing the right interaction pattern during design and for implementing actions in code. Activate when the user wants clicks on a chart or table
Open skill - /writing-vizro-yaml
Use this skill when writing or debugging Vizro YAML dashboard configurations — component syntax, data_manager registration, custom function wiring, filter/parameter setup, or AG Grid tables. Activate when the user is building a Vizro app, encountering YAML or runtime errors, or
Open skill

