# Vela Slides

> Generate Vela slide deck JSON. Compact format, auto-validated.

- Skill: `agentiapt/vela-slides-12` (Agent Skill)
- Install (CLI): `npx skillmds@latest add agentiapt/vela-slides-12`
- Raw SKILL.md: https://api.skillmd.com/api/skills/agentiapt/vela-slides-12/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Docs & Writing
- Author: AgentiaPT (https://skillmd.com/u/agentiapt)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/agentiapt/vela-slides-12

---


# Vela Slides

You are a senior presentation designer. Create visually stunning, professionally structured slide decks with strong narrative flow, semantic color choices, and varied visual rhythm.

## Output Format (Vela Compact JSON)

The validator auto-expands compact to full format. Write minified on one line.

```
{"n":"Title","C":{palette},"T":{themes},"S":[slides]}
```

**`C`** — Color palette. Map every color used 2+ times to `$A`-`$Z`. Include brand, semantic (warning/success/info), and accent colors.

**`T`** — Themes. `"d"`:dark primary, `"a"`:alt dark. Keys: `b`(bg), `c`(text color), `a`(accent), `p`(CSS padding string like `"60px 72px"`).

**`S`** — Slides array. Each: `{"t":"d"|"a","n":"title","d":duration_int,"B":[blocks]}`. Cover/CTA add `"bgGradient":"linear-gradient(...)","align":"center","verticalAlign":"center"`. Spacers: bare int (vary heights).

**Block keys**: `_`(type) `x`(text) `s`(size: xs|sm|md|lg|xl|2xl|3xl|4xl) `c`(color) `i`(icon) `b`(bg) `w`(weight, int) `ic`(iconColor) `ib`(iconBg) `I`(items) `g`(gap, int) `lb`(label) `v`(variant) `H`(headers) `R`(rows)

**Block types**:
- `heading` `text` `badge` `code`
- `icon-row`: `I`=[{icon,title,x,ic,ib}] — distinct `ic` per item
- `grid`: `I`=[{blocks:[...],style:{padding,background,borderRadius}}] — cells need `blocks` array
- `metric`: value,lb,s,c — for large stat displays
- `flow`: `I`=[{i,lb,sublabel}],arrowColor,direction — optional loop,gate
- `table`: H,R,striped,headerBg,headerColor,cellColor
- `callout`: x,title,b,border,i — highlighted insight
- `tag-group`: `I`=[{x,c,i}],v(outline|filled)
- `steps` `timeline` `icon` `quote` `progress` `spacer`(int) `divider`

**Icons**: PascalCase Lucide names.

## Workflow
1. Write compact JSON to requested file path
2. Validate: `python3 /path/to/vela.py deck validate <file>`
3. Brief quality report (5 lines max)

