marp-slide
Skill1 starsChanged 6 months agoApache-2.0View on GitHub
Use when users request slide creation, presentations, or Marp documents. Creates professional Marp slides with 7 themes (default, minimal, colorful, dark, gradient, tech, business). Supports custom themes, image layouts, and "make it look good" requests.
3 other projects use a version of this, 3 of them edited.
Adopted by
Most recently taken up by
- imMamdouhaboammar/kaku-chatgpt-harnessedited, first seen Oct 25, 2026
- Samueladewole/claude-skillsedited, first seen Oct 13, 2026
- nbirkner/digital-brainedited, first seen Apr 12, 2026
Other versions3 projects use a version of this.
Word for word · 0
None found.
Edited · 3
- imMamdouhaboammar/kaku-chatgpt-harness★ 080% same
- nbirkner/digital-brain★ 062% same
- Samueladewole/claude-skills★ 080% same
Wrote their own version · 0
None found.
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository23 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- brainstormingSkill
- design-mdSkill
- docxSkill
- hooks-creatorSkill
- htmlSkill
- mcp-builderSkill
- obsidian-cliSkill
- pdfSkill
- post-writingSkill
- pptxSkill
- skill-auto-improveSkill
- skill-creatorSkill
- skill-enhancerSkill
- skill-validatorSkill
- summarizing-meetingsSkill
- text-humanizerSkill
- transcript-fetcherSkill
- vdd-adversarialSkill
- vdd-sarcasticSkill
- wiki-ingestSkill
- xlsxSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
18 rules. 8 are common, 2 are distinctive, and 8 are very specific to this project.
8
Common
Most of the 3 edited versions we read keep these.
2
Distinctive
This author's own choices. Worth a look.
8
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Common: line 10
Create professional, visually appealing Marp presentation slides with 7 pre-designed themes and built-in best practices.
- Common: line 14
Use this skill when the user:
- Very specific: line 50
Scope: Create or modify only the Marp .md file the user requested.
- Distinctive: line 52
No External Fetching: Do not download images or external resources unless the user explicitly provides URLs and requests it.
- Very specific: line 53
Template Integrity: Read templates from assets/ as references.
- Very specific: line 58
Secondary: Every slide uses --- separators, title slide has <!-- _class: lead -->, and image directives use Marp syntax (not standard …
- Distinctive: line 59
Quality Gate: All items in the Quality Checklist (below) pass before delivering to the user.
- Very specific: line 80
Always start by reading references/marp-syntax.md for basic syntax
- Very specific: line 94
Read references/best-practices.md for quality guidelines
- Very specific: line 102
Add images if needed using patterns from references/image-patterns.md
- Very specific: line 108
If the caller wants .pptx, .pdf, .html, or image output — not just the .md — use the skill's own renderer:
- Common: line 169
When users give vague instructions like "良い感じにして", "かっこよく", or "make it cool":
- Common: line 184
Use h3 for sub-sections when appropriate
- Common: line 186
Ensure logical flow (intro → body → conclusion)
- Common: line 190
Use parallel structure in lists
- Common: line 191
Keep technical terms consistent
- Common: line 223
Before delivering slides, verify:
- Very specific: line 248
Run bash scripts/install.sh once to install and verify all of the above.
“Common” is measured: kept by at least 6 in 10 of the 3 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Marp Slide Creator
Create professional, visually appealing Marp presentation slides with 7 pre-designed themes and built-in best practices.
When to Use This Skill
Use this skill when the user:
- Requests to create presentation slides or Marp documents
- Asks to "make slides look good" or "improve slide design"
- Provides vague instructions like "良い感じにして" (make it nice) or "かっこよく" (make it cool)
- Wants to create lecture or seminar materials
- Needs bullet-point focused slides with occasional images
Red Flags (Anti-Rationalization)
STOP and READ if you are thinking:
- "I know Marp syntax well enough, no need to read the references" → WRONG. Always read
references/marp-syntax.mdand the relevant template. Marp image syntax and directives have specific rules that differ from standard Markdown. - "I'll just use the default theme, the user didn't specify" → WRONG. Infer the theme from content type using the Quick Start theme selection rules (technical → tech, business → business, creative → colorful/gradient, academic → minimal). Only fall back to default after inference fails.
- "I'll write the CSS from scratch instead of using the template" → WRONG. Templates contain tested, embedded CSS. Modifying CSS without reading
references/theme-css-guide.mdproduces broken slides.
Rationalization Table
| Agent Excuse | Reality |
| "The slide content is simple, I don't need a template" | Templates embed tested CSS. Without them, slides render with no styling in Marp. |
| "I'll combine all content onto fewer slides for efficiency" | Dense slides violate the 3-5 bullet points rule and destroy readability. |
| "The user will fix the image syntax later" | Broken Marp image directives (e.g., missing size or path) silently fail — the user sees nothing, not an error. |
| "I already checked best practices on a previous run" | Best practices are re-read per invocation. Memory does not persist between sessions. |
Execution Mode
- Mode:
prompt-firstfor content-creation; optional local-venvscripts/renderfor rendering. - Rationale: Content-creation (picking templates, writing Marp-compatible markdown) is prompt-first and needs no runtime. Rendering to
.pptx/.pdf/.html/.png/.jpegis handled by an optional Python wrapper (scripts/render.py, invoked through a local venv) that pre-processes mermaid diagrams with a locally-installedmmdcbefore calling a locally-installedmarp-cli. All rendering dependencies live underscripts/.venv/andscripts/node_modules/— nothing is installed globally.
Script Contract
- Input: a Marp-compatible
.mdfile (positional arg toscripts/render.py). - Flags:
--format {pptx,pdf,html,png,jpeg}(defaultpptx),--output PATH,--no-mermaid,--strict-mermaid,--theme NAME. - Output: single file in the requested format at
--output(or<input_stem>.<format>next to the input). - Side effects: per-deck cache directory
<input_stem>_assets/withdiagram-<sha1>.mmdand.svgfor each unique mermaid block. Re-runs reuse cached SVGs. - Binary resolution:
marpandmmdcare resolved fromscripts/node_modules/.bin/(local-venv install); falls back toPATHif absent. System-wide installs are not required. - Exit codes:
0success ·1bad args / missing input ·2marp CLI unavailable (runinstall.sh) ·3marp rendering failed ·4mermaid preprocessing failed AND--strict-mermaidwas set.
Safety Boundaries
- Scope: Create or modify only the Marp
.mdfile the user requested. Do not modify existing templates or CSS assets in the skill directory. - Output Location: Save output to the user's working directory or the location they specify. Do not hardcode output paths.
- No External Fetching: Do not download images or external resources unless the user explicitly provides URLs and requests it.
- Template Integrity: Read templates from
assets/as references. Never overwrite them. - Rendering Trust:
scripts/render.pyalways invokes marp with--allow-local-files, which puts every file readable by the current user within reach of the deck being rendered. Only render.mdfiles you trust; do not run the renderer on decks from untrusted sources.
Validation Evidence
- Primary: The output
.mdfile contains valid Marp frontmatter (marp: true,theme,paginatedirectives). - Secondary: Every slide uses
---separators, title slide has<!-- _class: lead -->, and image directives use Marp syntax (not standard Markdown). - Quality Gate: All items in the Quality Checklist (below) pass before delivering to the user.
Quick Start
Step 1: Select Theme
First, determine the appropriate theme based on the user's request and content.
Quick theme selection:
- Technical/Developer content → tech theme
- Business/Corporate → business theme
- Creative/Event → colorful or gradient theme
- Academic/Simple → minimal theme
- General/Unsure → default theme
- Dark background preferred → dark or tech theme
For detailed theme selection guidance, read references/theme-selection.md.
Step 2: Create Slides
- Read relevant references first:
- Always start by reading
references/marp-syntax.mdfor basic syntax - For images:
references/image-patterns.md(official Marpit image syntax) - For advanced features (math, emoji):
references/advanced-features.md - For custom themes:
references/theme-css-guide.md
- Always start by reading
- Copy content from the appropriate template file:
assets/template-basic.md- Default theme (most common)assets/template-minimal.md- Minimal themeassets/template-colorful.md- Colorful themeassets/template-dark.md- Dark mode themeassets/template-gradient.md- Gradient themeassets/template-tech.md- Tech/code themeassets/template-business.md- Business theme
- Read
references/best-practices.mdfor quality guidelines - Structure content following best practices:
- Title slide with
<!-- _class: lead --> - Concise h2 titles (5-7 characters in Japanese; 2-5 words in English)
- 3-5 bullet points per slide
- Adequate whitespace
- Title slide with
- Add images if needed using patterns from
references/image-patterns.md - Save to the user's working directory (or their specified output path) with
.mdextension
Step 3: Render (optional)
If the caller wants .pptx, .pdf, .html, or image output — not just the .md — use the skill's own renderer:
bash scripts/install.sh # one-time: creates scripts/.venv + scripts/node_modules
scripts/render INPUT.md # default: .pptx with mermaid pre-rendered
scripts/render INPUT.md --format pdfThe renderer:
- runs entirely from a local Python venv (
scripts/.venv/) and localnode_modules/(scripts/node_modules/) — nothing installed globally; - handles mermaid diagrams (pre-rendered to SVG via
mmdcbefore marp sees them) — closes the marp-core gap that leaves mermaid as raw code blocks; - supports formats
pptx,pdf,html,png,jpeg; - caches SVG diagrams in
<input>_assets/by SHA1 of the mermaid source (re-runs skipmmdc); - degrades gracefully when
mmdcis absent (prints a WARN, leaves mermaid as code).
See scripts/README.md for CLI flags, CI integration, and troubleshooting. See ## Dependencies below for what install.sh sets up.
Available Themes
1. Default Theme
Colors: Beige background, navy text, blue headings
Style: Clean, sophisticated with decorative lines
Use for: General seminars, lectures, presentations
Template: template-basic.md
2. Minimal Theme
Colors: White background, gray text, black headings
Style: Minimal decoration, wide margins, light fonts
Use for: Content-focused presentations, academic talks
Template: template-minimal.md
3. Colorful & Pop Theme
Colors: Pink gradient background, multi-color accents
Style: Vibrant gradients, bold fonts, rainbow accents
Use for: Youth-oriented events, creative projects
Template: template-colorful.md
4. Dark Mode Theme
Colors: Black background, cyan/purple accents
Style: Dark theme with glow effects, eye-friendly
Use for: Tech presentations, evening talks, modern look
Template: template-dark.md
5. Gradient Background Theme
Colors: Purple/pink/blue/green gradients (varies per slide)
Style: Different gradient per slide, white text, shadows
Use for: Visual-focused, creative presentations
Template: template-gradient.md
6. Tech/Code Theme
Colors: GitHub-style dark background, blue/green accents
Style: Code fonts, Markdown-style headers with # symbols
Use for: Programming tutorials, tech meetups, developer content
Template: template-tech.md
7. Business Theme
Colors: White background, navy headings, blue accents
Style: Corporate presentation style, top border, table support
Use for: Business presentations, proposals, reports
Template: template-business.md
Handling "Make It Look Good" Requests
When users give vague instructions like "良い感じにして", "かっこよく", or "make it cool":
- Infer theme from content:
- Business content → business theme
- Technical content → tech or dark theme
- Creative content → gradient or colorful theme
- General → default theme
- Apply best practices automatically:
- Shorten titles to 5-7 characters (Japanese) or 2-5 words (English)
- Limit bullet points to 3-5 items
- Add adequate whitespace
- Use consistent structure
- Enhance visual hierarchy:
- Use h3 for sub-sections when appropriate
- Break up dense text into multiple slides
- Ensure logical flow (intro → body → conclusion)
- Maintain professional tone:
- Match formality to content
- Use parallel structure in lists
- Keep technical terms consistent
Image Integration
For slides with images, consult references/image-patterns.md for detailed syntax.
Common patterns:
- Side image:
- Image on right, text on left - Centered:
- Centered with specific width - Full background:
- Full-screen background - Multiple images: Multiple
![bg]declarations
Example lecture pattern:
## Slide Title

- Explanation point 1
- Explanation point 2
- Explanation point 3File Output
Save the final Marp file with .md extension to the user's working directory or a path they specify:
presentation.mdseminar-slides.mdlecture-materials.md
Quality Checklist
Before delivering slides, verify:
- Theme selected appropriately for content
- CSS theme is embedded in the file
- Title slide uses
<!-- _class: lead --> - All h2 titles are concise (5-7 chars Japanese / 2-5 words English)
- Bullet points are 3-5 items per slide
- Images use proper Marp syntax
- File saved to user's working directory or specified path
- Content follows best practices
Dependencies
The content-creation portion of this skill (picking templates, writing Marp-compatible markdown) has no runtime dependencies — it's prompt-first, produces a .md file, and is portable across any environment.
The rendering portion (optional; see Step 3 above) is fully local — no global installs. bash scripts/install.sh sets up everything under scripts/.venv/ and scripts/node_modules/:
| Dependency | Where installed | How |
| Python 3.10+ | host | system package manager |
| Node.js 18+ | host | https://nodejs.org/ |
| Python venv | scripts/.venv/ | install.sh → python3 -m venv (stdlib only, no pip packages) |
@marp-team/marp-cli | scripts/node_modules/ | install.sh → npm install (local, not -g) |
@mermaid-js/mermaid-cli | scripts/node_modules/ | install.sh → npm install (local, not -g). Optional: without it mermaid degrades to code. |
| Headless Chromium | Puppeteer cache | auto-downloaded by marp/mmdc on first npm install (~200 MB) |
Run bash scripts/install.sh once to install and verify all of the above. The script is idempotent — safe to re-run. To fully uninstall, just delete scripts/.venv/ and scripts/node_modules/.
CI / sandboxed environments
Set these env vars before running install.sh on networks that block the Puppeteer Chromium download:
export PUPPETEER_SKIP_DOWNLOAD=true
export PUPPETEER_EXECUTABLE_PATH=/path/to/chromiumCyrillic / CJK / RTL text in mermaid diagrams
mmdc's default font does not contain all Unicode ranges — non-Latin text in a mermaid diagram may render as boxes. Fix via a mermaid config JSON, applied one of two ways:
Auto-load: drop a mermaid-config.json into scripts/; render.py picks it up on every run.
Per-run: pass --mermaid-config PATH to scripts/render.
# Example config
cat > scripts/mermaid-config.json <<'EOF'
{ "theme": "default", "themeVariables": { "fontFamily": "Arial, sans-serif" } }
EOFThe config content + mmdc --version are folded into the SHA1 cache key, so cached SVGs invalidate automatically when either changes. See scripts/README.md for details.
References
Core Documentation
- Marp syntax:
references/marp-syntax.md- Basic Marp/Marpit syntax (directives, frontmatter, pagination, etc.) - Image patterns:
references/image-patterns.md- Official image syntax (bg, filters, split backgrounds) - Theme CSS guide:
references/theme-css-guide.md- How to create custom themes based on Marpit specification - Advanced features:
references/advanced-features.md- Math, emoji, fragmented lists, Marp CLI, VS Code - Official themes:
references/official-themes.md- default, gaia, uncover themes documentation
Quality & Selection Guides
- Theme selection:
references/theme-selection.md- How to choose the right theme for content - Best practices:
references/best-practices.md- Quality guidelines for "cool" slides
Templates & Assets
- Templates:
assets/template-*.md- Starting points with embedded CSS for each theme (7 themes) - Standalone CSS:
assets/theme-*.css- CSS files for reference (already embedded in templates)
Renderer & Fixtures
- Renderer operator notes:
scripts/README.md— CLI flags, install, CI, troubleshooting - Fixtures:
examples/fixture-mermaid-minimal.md— minimal smoke (one mermaid mindmap)examples/fixture-mermaid-full-deck.md— realistic 10-slide deck with Cyrillic mermaid contentexamples/fixture-mermaid-multi.md— 3 mermaid blocks (2 unique + 1 duplicate), guards regex and SHA1 dedup
Official External Links
- Marp Official Site: https://marp.app/
- Marpit Directives: https://marpit.marp.app/directives
- Marpit Image Syntax: https://marpit.marp.app/image-syntax
- Marpit Theme CSS: https://marpit.marp.app/theme-css
- Marp Core GitHub: https://github.com/marp-team/marp-core
- Marp CLI GitHub: https://github.com/marp-team/marp-cli
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

