Skill
Community

slides-generator

Install
1
Install the plugin
$
npx claudepluginhub nanmicoder/claude-code-skills --plugin slides-generator

Want just this skill?

Then install: npx claudepluginhub u/[userId]/[slug]

Description

Generate interactive presentation slides using React + Tailwind. Triggers on keywords like "slides", "presentation", "PPT", "demo", "benchmark".

Tool Access

This skill uses the workspace's default tool permissions.

Supporting Assets
View in Repository
assets/template/index.html
assets/template/package.json
assets/template/postcss.config.js
assets/template/src/App.jsx
assets/template/src/components/Navigation.jsx
assets/template/src/index.css
assets/template/src/main.jsx
assets/template/tailwind.config.js
assets/template/vite.config.js
references/design-guide.md
references/palettes.md
Skill Content

Slides Generator

Generate professional presentation slides through parallel subagent execution.

Workflow

Step 1: 收集需求 + 确认大纲
Step 2: 创建项目 + 并行生成 slides
Step 3: 组装 + 启动

Step 1: 收集需求 + 确认大纲

Ask questions to understand:

  • Content: Title, number of slides, key points per slide
  • Style preference: Tech / Professional / Vibrant / Minimal

Recommend a theme from palettes.md based on style keywords.

Quick recommendations:

User saysRecommend
"Tech", "Modern"dark-sapphire-blue (glass)
"Cyberpunk", "Neon"cyberpunk (glass)
"Natural", "Organic"summer-meadow (flat)
"Minimal", "Clean"black-and-white (flat)
"Professional"minimal-modern-light (flat)

Present outline for confirmation:

## Presentation Outline

**Title**: Model Engineering Capability Benchmark
**Theme**: dark-sapphire-blue (glass style)
**Output**: ./model-benchmark (reply with path to change)

**Slides**:
1. Hero - Title and overview
2. Framework - Evaluation dimensions
3. Task 1 - Backend development
4. Summary - Conclusions

**Confirm to generate?**

Step 2: 创建项目 + 并行生成 slides

2a. Create project skeleton

# 1. Copy template
cp -r <skill-path>/assets/template <output-dir>
cd <output-dir>

# 2. Update tailwind.config.js with theme colors
# 3. Update index.html title
# 4. Ensure src/slides/ directory exists

2b. Dispatch parallel subagents

For each slide, dispatch a subagent. Read design-guide.md first, then include its content in each subagent prompt.

Subagent prompt template:

You are generating slide ${number} for a presentation.

## Design Guide
${designGuideContent}

## Theme Colors (use these Tailwind variables, not hardcoded colors)
- primary-50 to primary-950, accent-50 to accent-950
- bg-base, bg-card, bg-elevated
- text-primary, text-secondary, text-muted
- border-default, border-subtle

## Style: ${style}
${style === 'glass' ?
  'Use glassmorphism: glass class or bg-white/10 backdrop-blur-md border-white/20' :
  'Use flat design: bg-bg-card shadow-sm border-border-default'}

## Slide Content
Type: ${slideType}
Title: ${title}
Key Points:
${keyPoints}

## Output
Write a complete JSX file to: src/slides/${filename}
- React function component with default export
- Import icons from lucide-react, animations from framer-motion
- Follow slide-page / slide-content structure from the design guide

${firstSlideCode ? `
## Reference (match this style)
\`\`\`jsx
${firstSlideCode}
\`\`\`` : ''}

Execution: Dispatch all subagents in parallel. After slide 01 is generated, pass its code as reference to subsequent slides.

Step 3: 组装 + 启动

After all subagents complete:

  1. Update App.jsx with slide imports:
import Slide01 from './slides/01-hero';
import Slide02 from './slides/02-framework';
// ...

const SLIDES = [Slide01, Slide02, ...];

const NAV_ITEMS = [
  { slideIndex: 0, label: 'Hero' },
  { slideIndex: 1, label: 'Framework' },
  // ...
];
  1. Install and start:
npm install && npm run dev

Theme System

Themes are defined in palettes.md. Each theme has:

  • ID: Unique identifier
  • Tags: Keywords for matching user preferences
  • Style: glass or flat
  • Colors: 5 base colors that expand to full palette

Design Reference

See design-guide.md for layout rules, animation patterns, typography, and style conventions. This file should be included in every subagent prompt.

Project Structure

output-dir/
├── package.json
├── vite.config.js
├── tailwind.config.js      ← Theme colors
├── index.html              ← Title
├── src/
│   ├── main.jsx
│   ├── App.jsx             ← Slide imports & navigation
│   ├── index.css
│   ├── components/
│   │   └── Navigation.jsx
│   └── slides/
│       ├── 01-hero.jsx
│       ├── 02-framework.jsx
│       └── ...
Stats
Stars39
Forks8
Last CommitMar 20, 2026

Similar Skills