| name | creating-md-slides |
| description | Use when creating presentation slides, converting markdown to PDF/PPTX/HTML, or asked about Marp, Beamer, or reveal.js. Triggers on mentions of slides, presentations, decks, or requests to generate visual presentations from content. |
Creating Markdown Slides
Convert Markdown to presentation slides in multiple formats (PDF, PPTX, HTML).
Workflow
digraph workflow {
"Content request" -> "Write slides.md";
"Write slides.md" -> "Run SlideGauge";
"Run SlideGauge" -> "Fix issues (if any)";
"Fix issues (if any)" -> "User reviews";
"User reviews" -> "Ask: Ready to convert?";
"Ask: Ready to convert?" -> "Convert to output format";
}
- Generate markdown content based on user's request
- Write to
.md file (e.g., slides.md)
- Run quality check (Marp slides only):
uvx --from git+https://github.com/nibzard/slidegauge slidegauge slides.md --text
- Fix any failing slides (score < 70) before proceeding
- Tell user: "Created
slides.md (score: X/100). Review and edit if needed."
- Ask before converting: "Ready to convert to PDF/PPTX/HTML?"
- Convert using appropriate tool
Quality thresholds: 70 = passing, 80 = good, 90+ = excellent. See marp-slide-quality skill for fix patterns.
Tool Selection
| Scenario | Tool | Command |
|---|
| Modern slides, quick output | Marp | marp slides.md -o slides.pdf |
| Academic, math-heavy | Pandoc Beamer | pandoc slides.md -t beamer -o slides.pdf |
| Editable PowerPoint | Pandoc PPTX | pandoc slides.md -o slides.pptx |
| Web presentation | reveal.js | pandoc slides.md -t revealjs -s -o slides.html |
Quick Commands
Marp (Recommended)
marp slides.md -o slides.pdf
marp slides.md -o slides.pptx
marp slides.md -o slides.html
marp slides.md --theme gaia -o out.pdf
marp slides.md -o out.pdf --allow-local-files
Pandoc Beamer
pandoc slides.md -t beamer -o slides.pdf
pandoc slides.md -t beamer --pdf-engine=xelatex -o slides.pdf
pandoc slides.md -t beamer -V theme:metropolis -o slides.pdf
reveal.js
pandoc slides.md -t revealjs -s -o slides.html
pandoc slides.md -t revealjs -s -V theme=moon -o slides.html
Markdown Formats
Marp Format
---
marp: true
theme: default
paginate: true
---
# Slide Title
Content here
---
# Next Slide
- Bullet points
- More content
Pandoc/Beamer Format
---
title: Presentation Title
author: Author Name
---
# Section Title
## Slide Title
- Content
- More content
---
## Another Slide
Content continues
Audience Customization
| Audience | Approach |
|---|
| manager | Executive summary, key metrics, recommendations |
| developer | Code examples, technical details |
| learner | Step-by-step, progressive complexity |
| general | Balanced, accessible language |
Visual Styles
| Style | Marp Theme | Use Case |
|---|
| professional | gaia | Corporate, structured |
| minimal | default | Clean, whitespace |
| academic | Beamer metropolis | Formal, math-friendly |
Content Density
| Length | Slides | Bullets/slide |
|---|
| brief | 5-8 | 3-4 |
| standard | 10-15 | 4-6 |
| detailed | 20+ | 5-8 |
Troubleshooting
| Issue | Solution |
|---|
| CJK characters broken | Use --pdf-engine=xelatex with CJK font |
| Images not loading (Marp) | Add --allow-local-files |
| Math not rendering | Add --mathjax for reveal.js |