From slidev
Guides brand token extraction from websites using Playwright, Slidev theme generation from configs, and validation of slide styles for colors, fonts, spacing, and brand compliance.
How this skill is triggered — by the user, by Claude, or both
Slash command
/slidev:stylesThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Brand discovery, theme generation, and style validation for Slidev presentations.
Brand discovery, theme generation, and style validation for Slidev presentations.
Activate when:
The full brand discovery workflow has four stages:
browser_evaluateFor step-by-step Playwright extraction details, see references/discovery-pipeline.md.
For theme generation details, see references/theme-generation.md.
For validation details, see references/validation-checklist.md.
Use these tools during brand extraction:
| Tool | Purpose |
|---|---|
browser_navigate | Open the brand site URL |
browser_evaluate | Run JavaScript to extract CSS vars and computed styles |
browser_take_screenshot | Capture rendered slides or pages for visual validation |
browser_snapshot | Get accessibility tree snapshot for structural inspection |
browser_close | Close the browser session when extraction is complete |
Always call browser_close after extraction to release resources.
Produce a brand config JSON object after extraction. All fields are optional; populate what is available.
{
"colors": {
"primary": "#hex",
"secondary": "#hex",
"accent": "#hex",
"background": "#hex",
"text": "#hex",
"error": "#hex",
"success": "#hex"
},
"fonts": {
"heading": "Font Name",
"body": "Font Name",
"code": "Monospace Font"
},
"spacing": {
"slide-padding": "value",
"section-gap": "value"
},
"logo": {
"url": "path/to/logo",
"position": "top-left|top-right"
}
}
Save the brand config as brand-config.json in the project root before proceeding to theme generation.
Convert the brand config to a Slidev theme by:
styles/index.css with CSS custom properties mapped from brand config colors and spacinguno.config.ts (or vite.config.ts) with brand colors and font stacksstyles/index.css or placing font files in public/fonts/components/Logo.vue component for logo placementFor complete theme generation with code examples, see references/theme-generation.md.
After applying a theme, validate compliance by:
browser_take_screenshotbrowser_evaluateWCAG 2.1 AA requirements (per core:accessibility):
For the full validation workflow and automated checks, see references/validation-checklist.md.
When no website is available, gather brand information using this questionnaire:
Brand Color Questionnaire
--------------------------
1. Primary brand color (main CTA, headings): ___
2. Secondary brand color (accents, highlights): ___
3. Background color (slides): ___
4. Body text color: ___
5. Accent/success color (callouts): ___
6. Error/warning color: ___
Font Questionnaire
------------------
7. Heading font (name and weight): ___
8. Body text font: ___
9. Code/monospace font: ___
10. Are fonts hosted on Google Fonts, or do you have local files?
Spacing Questionnaire
---------------------
11. Slide padding (distance from edge to content): ___
12. Gap between major sections: ___
Logo Questionnaire
------------------
13. Logo file URL or local path: ___
14. Logo placement: top-left / top-right / none
Populate the brand config JSON from questionnaire answers, then proceed to theme generation.
Load core:accessibility when:
Key WCAG requirements that apply to slide presentations:
A self-contained brand theme lives in a slidev-theme-brand/ directory:
slidev-theme-brand/
├── package.json # Theme package with name "slidev-theme-brand"
├── styles/
│ └── index.css # CSS custom properties and base styles
├── uno.config.ts # UnoCSS theme extensions and shortcuts
└── components/
└── Logo.vue # Global logo component for all slides
Reference the theme from the presentation frontmatter:
---
theme: ./slidev-theme-brand
---
references/discovery-pipeline.md — Step-by-step Playwright MCP extraction workflow with JavaScript snippetsreferences/theme-generation.md — Converting brand config to UnoCSS theme and CSS variablesreferences/validation-checklist.md — Contrast validation, font verification, and compliance checklistnpx claudepluginhub vinnie357/claude-skills --plugin slidevGuides brand discovery, Slidev theme generation, and slide style validation. Extracts brand tokens from websites using Playwright MCP.
Generates HTML slide design system markdown from a reference URL by analyzing color palette, typography, logo, and aesthetic mood, applying rules like 1280×720 fit, overflow safety, and mobile fixes.
Generates viewport-fitted single-file HTML slide decks with 8 visual themes, clamp-scaled typography, system font fallbacks, and scroll-snap navigation for web presentations.