name: presentation description: >- Cria apresentacoes HTML navegaveis em 16:9 e documentos visuais em scroll vertical usando o design system da Vector Labs. Use para pitch decks, propostas, workshops, one-pagers e relatorios visuais. license: Apache-2.0 compatibility: claude-code allowed-tools: Read Write Edit Glob Bash metadata: author: vector-labs version: "1.0" tags: [slides, design] complexity: intermediate featured: true
Presentation Skill
Create and edit HTML presentations (slide decks) and visual documents using the Vector Labs design system.
Two Modes
| Slide Deck | Visual Document | |
|---|---|---|
| Layout | Horizontal, 16:9, one slide at a time | Vertical, scrollable, reading width |
| Navigation | Keyboard/touch/buttons | Natural scroll |
| Output | Engine folder + slide files | Single self-contained HTML |
| Use cases | Pitch decks, propostas, workshops | One-pagers, relatórios, briefs, guias |
| Engine | Copies 3-resources/presentations/engine/ |
No engine needed |
Key References (read on demand)
- Slide catalog (14 types, full HTML/CSS):
3-resources/presentations/slide-catalog.md - Design system (colors, typography, spacing, animations):
3-resources/presentations/design-system.md - Engine (copy for new decks):
3-resources/presentations/engine/ - Palette catalog:
references/palettes.md(bundled) - Document sections (base patterns for visual docs):
references/document-sections.md(bundled) - README:
3-resources/presentations/README.md
Initial Flow (both modes)
- Read the document/project the user points to (or their description)
- Ask using AskUserQuestion:
- Formato: Slide deck ou documento visual?
- Objetivo: Qual o objetivo? (pitch, proposta, update, relatório, brief...)
- Público: Quem vai ver?
- Tom: Formal, casual, técnico?
- Read
references/palettes.md, ask user to choose palette or create custom - Proceed to the appropriate workflow below
Slide Deck
Slide Types (quick reference)
- Cover — Title + subtitle + date (dark)
- Statement — Single powerful message
- Problem — Two-column reality vs consequences
- Market/Comparison — 2-4 option cards
- TAM/Data Viz — Market sizing, left text + right visual
- Roadmap/Flow — Data flows, architecture, features
- Pricing/Proposal — Two paths with highlighted option
- Closing — Logo, next steps, CTA
- Section Divider — Section number + title
- Team — Grid of members
- Quote/Testimonial — Blockquote with attribution
- Single Stat Hero — One massive number
- Timeline — Milestones with dots and dates
- Thank You/Contact — Generic closing
For full HTML/CSS of each type, read 3-resources/presentations/slide-catalog.md.
New Deck
- Suggest slide composition (which types, what order, brief content outline per slide)
- Confirm with user. Iterate until approved.
- Read
3-resources/presentations/slide-catalog.mdfor HTML/CSS templates - Read
3-resources/presentations/design-system.mdfor tokens - Copy
3-resources/presentations/engine/to target directory - Edit
parts/head.html: set deck title, add stylesheet<link>tags - Generate each slide as
slides/NN-name.html:- Single
<div class="slide" data-theme="dark|light">per file - Every
<div>must have a matching</div>—build.shvalidates this and will refuse to build if tags are unbalanced (unclosed divs cause slides to nest inside each other, breaking navigation) - Use
.anim-in+.d1...d8for animation stagger - Use
.slide-label,.slide-title,.slide-innerstructure - Lucide icons inline SVG when needed
- Single
- If non-default palette: create
styles/theme.csswith CSS overrides, add<link>toparts/head.html - If architecture diagrams: add anime.js CDN +
architecture.js+ hooks inparts/foot.html - Run
./build.shto assembleindex.html
Slide HTML pattern
<div class="slide" data-theme="dark">
<div class="slide-inner">
<span class="slide-label anim-in d1">LABEL</span>
<h1 class="slide-title anim-in d2">Title</h1>
<div class="anim-in d3"><!-- content --></div>
</div>
</div>
Edit Existing Deck
- List the
slides/directory to see current slides - Read existing slide files
- Ask what to change: add slide, edit content, remove, reorder, change palette
- Confirm before writing
- After changes: run
./build.shto reassembleindex.html
Visual Document
New Document
- Read
references/document-sections.mdfor base HTML structure and section patterns - Suggest document structure (which sections, content outline)
- Confirm with user. Iterate until approved.
- Generate single self-contained HTML file:
- Google Fonts CDN for typography
- Inline
<style>with design system tokens + palette .doccontainer, width controlled by--doc-widthvariable- Compose from base sections (hero, stats, cards, text, callout, table, divider)
- Invent new section patterns as needed, following design tokens from
references/document-sections.md
- Dark or light variant based on content and user preference
Edit Existing Document
- Read the existing HTML file
- Ask what to change: add section, edit content, change palette, restructure
- Confirm before writing
Shared Guidelines
- Typography: Fraunces (titles, 800), Plus Jakarta Sans (body), JetBrains Mono (labels/data)
- Labels: JetBrains Mono 11px, uppercase, letter-spacing 0.15em, accent color
- Icons: Lucide inline SVG, stroke-width 2, 16-24px
- Palette: Always ask and apply from catalog or custom. Read
references/palettes.md. - Confirm before generating: Always present plan to user before writing files