md-slides
Converts a markdown deck (slides separated by `---` HR boundaries or by `# ` H1 headings, with optional `<!-- notes: ... -->` presenter notes blocks) into a single-file HTML presentation with arrow-key / space / PgDn / PgUp / Home / End / P / Esc keyboard navigation, presenter mode (split view with current slide + speaker notes + clock + next-slide preview), URL-hash deep linking, and `@media print` page-per-slide for PDF export. Triggers when the markdown-html-orchestrator classifies an input as SLIDES, or when invoked directly via /cs:md-slides. Reuses md-document's markdown parser for slide
npx skills add alirezarezvani/claude-skills --skill md-slides --agent claude-code
Same command for any agent — swap --agent for codex, cursor, copilot.
Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.
# md-slides — Markdown deck → single-file HTML presentation The slide-deck converter. Reads a markdown deck (HR or H1 boundaries, optional presenter notes), emits a single-file HTML presentation that runs in any browser with keyboard navigation, presenter mode, and print-to-PDF. Three stdlib tools pipeline together: ``` slide_splitter.py → presenter_notes_parser.py → deck_html_renderer.py (md → ordered (extract <!-- notes: (slides + design-system slides with --> blocks, attach tokens → single-file titles) per slide) HTML with keyboard nav) ``` ## When to invoke | Symptom | Action | |---|---| | `markdown-html-orchestrator` routes input as SLIDES | Invoke this skill | | User runs `/cs:md-slides <path>.md` directly | Invoke this skill | | Input has 3+ `---` HR lines OR 5+ H1 headings with short bodies | Invoke this skill | | Input is a long-form spec | Route to `md-document` instead | | Input is a code review | Route to `md-review` instead | | Input has no clear slide boundaries | Refuse, route to `md-document` | | Input would produce 1 slide | Refuse (it's a poster) | ## Pipeline ```bash # 1. Split slides on --- or H1 (auto-detect by default) python3 markdown-html/skills/md-slides/sc
- When to invoke
- Pipeline
- What ships in the HTML
- Hard rules
- Forcing-question library (Matt Pocock grill discipline)
- Distinct from
- Output artifact
- References
python3 markdown-html/skills/md-slides/scripts/slide_splitter.py \ python3 markdown-html/skills/md-slides/scripts/presenter_notes_parser.py \ python3 markdown-html/skills/md-slides/scripts/deck_html_renderer.py \
What does the md-slides skill do?
Converts a markdown deck (slides separated by `---` HR boundaries or by `# ` H1 headings, with optional `<!-- notes: ... -->` presenter notes blocks) into a single-file HTML presentation with arrow-key / space / PgDn / PgUp / Home / End / P / Esc keyboard navigation, presenter mode (split view with current slide + speaker notes + clock + next-slide preview), URL-hash deep linking, and `@media print` page-per-slide for PDF export. Triggers when the markdown-html-orchestrator classifies an input as SLIDES, or when invoked directly via /cs:md-slides. Reuses md-document's markdown parser for slide
How do I install it?
Run `npx skills add alirezarezvani/claude-skills --skill md-slides --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.
Where does this skill come from?
From alirezarezvani/claude-skills, a repository with 23,791 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.
Is a popular skill a good skill?
Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.