fergana-labs/stash/slides
Claude Code and agent skill by fergana-labs/stash
- community
Checking that the SKILL.md file is still in the repository.
How to build presentation slide decks as HTML pages. Covers the slide format, canvas dimensions, and recommended libraries.
Install
npx vskill@latest install fergana-labs/stash/slidesSKILL.md
Building slide decks
A slide deck is a single HTML page with html_layout: "fixed-aspect" whose <body> contains one <section class="slide"> per slide.
The canvas — 1920 × 1080 (16:9)
Every slide is a fixed 1920 × 1080 px canvas with overflow:hidden. Stay inside a 64 px safe-area margin (working area 1792 × 952 px). Nothing should scroll inside a slide; the viewer scales the canvas to fit the viewport, and the exporter renders at native 1920×1080.
Required structure
Page types (data-type, optional but recommended)
cover— title slide.toc— table of contents.chapter— section divider.content— regular content slide.final— thanks / Q&A / contact slide.
These let presenter view and future templates target slides by role.
Typography
- Title text: ≥ 56 px.
- Body text: ≥ 28 px.
- Footnotes / captions: ≥ 20 px.
- Use the system font stack or one CDN font (Inter, Geist).
Avoid @font-face — it adds latency in export.
Recommended libraries (all CDN-loadable)
| Need | Use | |
|---|---|---|
| Charts | Chart.js for 1–2 charts per slide; ECharts for dashboards; D3 only when custom | |
| Tables | Plain <table> + Tailwind classes. No DataTables. | |
| Icons | Font Awesome 6 (CDN) or Lucide | |
| Code | Shiki (preferred, vector-clean) or highlight.js | |
| Math | KaTeX with auto-render (never MathJax inside iframe) | |
| Diagrams | Mermaid via CDN, render once on load |
Render charts at load time (inline <script> in the slide) so screenshot exporters capture them. Don't rely on interactivity in PPTX/PDF.
Anti-patterns
- More than ~40 words of body text per slide.
- Low contrast (white text on light backgrounds, etc.).
vh/vwunits — usepx. The canvas is fixed-pixel.- Images without
max-width: 100%(they'll overflow). - Fixed-positioned elements depending on viewport (
position: fixed). - Custom fonts loaded via
@font-facefrom arbitrary URLs. - Multiple
<section class="slide">nested inside each other.
Editing
Users can touch up text inline with the Edit button on the page. Keep markup semantic — use <h1>, <h2>, <p>, <ul> rather than a sea of <div>s — so the WYSIWYG editor's text selection and the exporter's text-overlay extraction both work cleanly.
Export
The PDF export is vector text. The PPTX and Google Slides exports embed each slide as a high-DPI image plus an invisible text overlay so users can select, copy, and search the text in PowerPoint / Keynote / Slides. Don't ship interactive controls — they won't survive the export.
Security
- Security scanPassed, 95 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingdocs/skills/slides/SKILL.md
Popularity
- Repository stars
- 332
- Repository forks
- 52
- 7-day trend score
- 29
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/fergana-labs/stash/slides)