html-ppt — HTML PPT Studio

👤 lewislulu 📦 v1.0.0 ⭐ 4.6 ⬇️ 4.8K 下载
📄 办公效率 免费

📖 技能介绍

html-ppt — HTML PPT Studio

Author professional HTML presentations as static files. One theme file = one look. One layout file = one page type. One animation class = one entry effect. All pages share a token-based design system in assets/base.css.

Install

npx skills add https://github.com/lewislulu/html-ppt-skill

One command, no build. Pure static HTML/CSS/JS with only CDN webfonts.

What the skill gives you

  • 36 themes (assets/themes/*.css) — minimal-white, editorial-serif, soft-pastel, sharp-mono, arctic-cool, sunset-warm, catppuccin-latte/mocha, dracula, tokyo-night, nord, solarized-light, gruvbox-dark, rose-pine, neo-brutalism, glassmorphism, bauhaus, swiss-grid, terminal-green, xiaohongshu-white, rainbow-gradient, aurora, blueprint, memphis-pop, cyberpunk-neon, y2k-chrome, retro-tv, japanese-minimal, vaporwave, midcentury, corporate-clean, academic-paper, news-broadcast, pitch-deck-vc, magazine-bold, engineering-whiteprint
  • 14 full-deck templates (templates/full-decks/<name>/) — complete multi-slide decks with scoped .tpl-<name> CSS. 8 extracted from real-world decks (xhs-white-editorial, graphify-dark-graph, knowledge-arch-blueprint, hermes-cyber-terminal, obsidian-claude-gradient, testing-safety-alert, xhs-pastel-card, dir-key-nav-minimal), 6 scenario scaffolds (pitch-deck, product-launch, tech-sharing, weekly-report, xhs-post 3:4, course-module)
  • 31 layouts (templates/single-page/*.html) with realistic demo data
  • 27 CSS animations (assets/animations/animations.css) via data-anim
  • 20 canvas FX animations (assets/animations/fx/*.js) via data-fx — particle-burst, confetti-cannon, firework, starfield, matrix-rain, knowledge-graph (force-directed), neural-net (pulses), constellation, orbit-ring, galaxy-swirl, word-cascade, letter-explode, chain-react, magnetic-field, data-stream, gradient-blob, sparkle-trail, shockwave, typewriter-multi, counter-explosion
  • Keyboard runtime (assets/runtime.js) — arrows, T (theme), A (anim), F/S/O
  • FX runtime (assets/animations/fx-runtime.js) — auto-inits [data-fx] on slide enter, cleans up on leave
  • Showcase decks for themes / layouts / animations / full-decks gallery
  • Headless Chrome render script for PNG export

When to use

Use when the user asks for any kind of slide-based output or wants to turn text/notes into a presentable deck. Prefer this over building from scratch.

Before you author anything — ALWAYS ask or recommend

Do not start writing slides until you understand three things. Either ask the user directly, or — if they already handed you rich content — propose a tasteful default and confirm.

  1. Content & audience. What's the deck about, how many slides, who's watching (engineers / execs / 小红书读者 / 学生 / VC)?
  2. Style / theme. Which of the 36 themes fits? If unsure, recommend 2-3 candidates based on tone:
    • Business / investor pitch → pitch-deck-vc, corporate-clean, swiss-grid
    • Tech sharing / engineering → tokyo-night, dracula, catppuccin-mocha, terminal-green, blueprint
    • 小红书图文 → xiaohongshu-white, soft-pastel, rainbow-gradient, magazine-bold
    • Academic / report → academic-paper, editorial-serif, minimal-white
    • Edgy / cyber / launch → cyberpunk-neon, vaporwave, y2k-chrome, neo-brutalism
  3. Starting point. One of the 14 full-deck templates, or scratch? Point to the closest templates/full-decks/<name>/ and ask if it fits. If the user's content suggests something obvious (e.g. "我要做产品发布会" → product-launch), propose it confidently instead of asking blindly.

A good opening message looks like:

我可以给你做这份 PPT!先确认三件事:

  1. 大致内容 / 页数 / 观众是谁?
  2. 风格偏好?我建议从这 3 个主题里选一个:tokyo-night(技术分享默认好看)、xiaohongshu-white(小红书风)、corporate-clean(正式汇报)。
  3. 要不要用我现成的 tech-sharing 全 deck 模板打底?

Only after those are clear, scaffold the deck and start writing.

Quick start

  1. Scaffold a new deck. From the repo root:
    ./scripts/new-deck.sh my-talk
    open examples/my-talk/index.html
  2. Pick a theme. Open the deck and press T to cycle. Or hard-code it:
    <link rel="stylesheet" id="theme-link" href="../assets/themes/aurora.css">

    Catalog in references/themes.md.

  3. Pick layouts. Copy <section class="slide">...</section> blocks out of files in templates/single-page/ into your deck. Replace the demo data. Catalog in references/layouts.md.
  4. Add animations. Put data-anim="fade-up" (or class="anim-fade-up") on any element. On <ul>/grids, use anim-stagger-list for sequenced reveals. For canvas FX, use <div data-fx="knowledge-graph">...</div> and include <script src="../assets/animations/fx-runtime.js"></script>. Catalog in references/animations.md.
  5. Use a full-deck template. Copy templates/full-decks/<name>/ into examples/my-talk/ as a starting point. Each folder is self-contained with scoped CSS. Catalog in references/full-decks.md and gallery at templates/full-decks-index.html.
  6. Render to PNG.
    ./scripts/render.sh templates/theme-showcase.html       # one shot
    ./scripts/render.sh examples/my-talk/index.html 12      # 12 slides

Authoring rules (important)

  • Always start from a template. Don't author slides from scratch — copy the closest layout from templates/single-page/ first, then replace content.
  • Use tokens, not literal colors. Every color, radius, shadow should come from CSS variables defined in assets/base.css and overridden by a theme. Good: color: var(--text-1). Bad: color: #111.
  • Don't invent new layout files. Prefer composing existing ones. Only add a new templates/single-page/*.html if none of the 30 fit.
  • Respect chrome slots. .deck-header, .deck-footer, .slide-number and the progress bar are provided by assets/base.css + runtime.js.
  • Keyboard-first. Always include <script src="../assets/runtime.js"></script> so the deck supports ← → / T / A / F / S / O / hash deep-links.
  • One .slide per logical page. runtime.js makes .slide.is-active visible; all others are hidden.
  • Supply notes. Wrap speaker notes in <div class="notes">…</div> inside each slide. Press S to open the overlay.

Writing guide

See references/authoring-guide.md for a step-by-step walkthrough: file structure, naming, how to transform an outline into a deck, how to choose layouts and themes per audience, how to do a Chinese + English deck, and how to export.

Catalogs (load when needed)

File structure

html-ppt/
├── SKILL.md                 (this file)
├── references/              (detailed catalogs, load as needed)
├── assets/
│   ├── base.css             (tokens + primitives — do not edit per deck)
│   ├── fonts.css            (webfont imports)
│   ├── runtime.js           (keyboard + presenter + overview + theme cycle)
│   ├── themes/*.css         (36 token overrides, one per theme)
│   └── animations/
│       ├── animations.css   (27 named CSS entry animations)
│       ├── fx-runtime.js    (auto-init [data-fx] on slide enter)
│       └── fx/*.js          (20 canvas FX modules: particles/graph/fireworks…)
├── templates/
│   ├── deck.html                  (minimal 6-slide starter)
│   ├── theme-showcase.html        (36 slides, iframe-isolated per theme)
│   ├── layout-showcase.html       (iframe tour of all 31 layouts)
│   ├── animation-showcase.html    (20 FX + 27 CSS animation slides)
│   ├── full-decks-index.html      (gallery of all 14 full-deck templates)
│   ├── full-decks/<name>/         (14 scoped multi-slide deck templates)
│   └── single-page/*.html         (31 layout files with demo data)
├── scripts/
│   ├── new-deck.sh                (scaffold a deck from deck.html)
│   └── render.sh                  (headless Chrome → PNG)
└── examples/demo-deck/            (complete working deck)

Rendering to PNG

scripts/render.sh wraps headless Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome. For multi-slide capture, runtime.js exposes #/N deep-links, and render.sh iterates 1..N.

7w4.net小葱技能站,你的AI助手技能库。

./scripts/render.sh templates/single-page/kpi-grid.html        # single page
./scripts/render.sh examples/demo-deck/index.html 8 out-dir    # 8 slides, custom dir

Keyboard cheat sheet

←  →  Space  PgUp  PgDn  Home  End    navigate
F                                       fullscreen
S                                       speaker notes overlay
O                                       slide overview grid
T                                       cycle themes (reads data-themes attr)
A                                       cycle demo animation on current slide
#/N in URL                              deep-link to slide N

License & author

MIT. Copyright (c) 2026 lewis <sudolewis@gmail.com>.

🤖 AI 评测

这个技能质量很高,提供了大量精美的PPT模板和主题选择,做出来的演示文稿视觉效果专业。支持一键切换不同风格,中文支持也很好。不足之处是全英文说明对中文用户不太友好,部分动画效果在性能一般的设备上可能会卡,导出功能只有图片格式没有PDF选项。总体来说是一个功能丰富、设计精美的PPT工具,适合对视觉有要求的用户使用。

📊 多维度评分

适应性4.5
规范性4.6
有效性4.8
可靠性4.2
可信度4.8

📁 包含文件 (156 个)

📄 README.md 8.4 KB
📄 SKILL.md 10.4 KB
📄 _meta.json 127 B
📄 assets/animations/animations.css 7.9 KB
📄 assets/animations/fx-runtime.js 3.1 KB
📄 assets/animations/fx/_util.js 1.9 KB
📄 assets/animations/fx/chain-react.js 1.4 KB
📄 assets/animations/fx/confetti-cannon.js 1.5 KB
📄 assets/animations/fx/constellation.js 1.3 KB
📄 assets/animations/fx/counter-explosion.js 2.3 KB
📄 assets/animations/fx/data-stream.js 1.5 KB
📄 assets/animations/fx/firework.js 1.6 KB
📄 assets/animations/fx/galaxy-swirl.js 1 KB
📄 assets/animations/fx/gradient-blob.js 1.4 KB
📄 assets/animations/fx/knowledge-graph.js 2.4 KB
📄 assets/animations/fx/letter-explode.js 2 KB
📄 assets/animations/fx/magnetic-field.js 1.3 KB
📄 assets/animations/fx/matrix-rain.js 1.1 KB
📄 assets/animations/fx/neural-net.js 2.6 KB
📄 assets/animations/fx/orbit-ring.js 1.3 KB
📄 assets/animations/fx/particle-burst.js 1.2 KB
📄 assets/animations/fx/shockwave.js 1.3 KB
📄 assets/animations/fx/sparkle-trail.js 1.9 KB
📄 assets/animations/fx/starfield.js 990 B
📄 assets/animations/fx/typewriter-multi.js 2.1 KB
📄 assets/animations/fx/word-cascade.js 1.6 KB
📄 assets/base.css 7.6 KB
📄 assets/fonts.css 889 B
📄 assets/runtime.js 6.8 KB
📄 assets/themes/academic-paper.css 1.2 KB
📄 assets/themes/arctic-cool.css 673 B
📄 assets/themes/aurora.css 1.1 KB
📄 assets/themes/bauhaus.css 719 B
📄 assets/themes/blueprint.css 956 B
📄 assets/themes/catppuccin-latte.css 663 B
📄 assets/themes/catppuccin-mocha.css 660 B
📄 assets/themes/corporate-clean.css 949 B
📄 assets/themes/cyberpunk-neon.css 1.3 KB
📄 assets/themes/dracula.css 650 B
📄 assets/themes/editorial-serif.css 863 B
📄 assets/themes/engineering-whiteprint.css 1.3 KB
📄 assets/themes/glassmorphism.css 1.1 KB
📄 assets/themes/gruvbox-dark.css 635 B
📄 assets/themes/japanese-minimal.css 1004 B
📄 assets/themes/magazine-bold.css 1.1 KB
📄 assets/themes/memphis-pop.css 967 B
📄 assets/themes/midcentury.css 920 B
📄 assets/themes/minimal-white.css 760 B
📄 assets/themes/neo-brutalism.css 792 B
📄 assets/themes/news-broadcast.css 1.1 KB
📄 assets/themes/nord.css 628 B
📄 assets/themes/pitch-deck-vc.css 1.2 KB
📄 assets/themes/rainbow-gradient.css 839 B
📄 assets/themes/retro-tv.css 1.2 KB
📄 assets/themes/rose-pine.css 634 B
📄 assets/themes/sharp-mono.css 739 B
📄 assets/themes/soft-pastel.css 665 B
📄 assets/themes/solarized-light.css 645 B
📄 assets/themes/sunset-warm.css 675 B
📄 assets/themes/swiss-grid.css 929 B
📄 assets/themes/terminal-green.css 836 B
📄 assets/themes/tokyo-night.css 635 B
📄 assets/themes/vaporwave.css 1.2 KB
📄 assets/themes/xiaohongshu-white.css 757 B
📄 assets/themes/y2k-chrome.css 1.3 KB
📄 docs/readme/_theme-cell.html 2.6 KB
📄 docs/readme/montage-animations.html 4.6 KB
📄 docs/readme/montage-layouts.html 3.1 KB
📄 docs/readme/montage-templates.html 3.2 KB
📄 docs/readme/montage-themes.html 2.9 KB
📄 examples/demo-deck/index.html 8.7 KB
📄 references/animations.md 7.5 KB
📄 references/authoring-guide.md 4.6 KB
📄 references/full-decks.md 8 KB
📄 references/layouts.md 3.9 KB
📄 references/themes.md 5.1 KB
📄 scripts/new-deck.sh 1.3 KB
📄 scripts/render.sh 1.7 KB
📄 templates/animation-showcase.html 7.5 KB
📄 templates/deck.html 3.2 KB
📄 templates/full-decks-index.html 4.3 KB
📄 templates/full-decks/course-module/README.md 627 B
📄 templates/full-decks/course-module/index.html 9.8 KB
📄 templates/full-decks/course-module/style.css 4.3 KB
📄 templates/full-decks/dir-key-nav-minimal/README.md 1021 B
📄 templates/full-decks/dir-key-nav-minimal/index.html 6 KB
📄 templates/full-decks/dir-key-nav-minimal/style.css 4.7 KB
📄 templates/full-decks/graphify-dark-graph/README.md 937 B
📄 templates/full-decks/graphify-dark-graph/index.html 10.9 KB
📄 templates/full-decks/graphify-dark-graph/style.css 5 KB
📄 templates/full-decks/hermes-cyber-terminal/README.md 1016 B
📄 templates/full-decks/hermes-cyber-terminal/index.html 11.5 KB
📄 templates/full-decks/hermes-cyber-terminal/style.css 5.7 KB
📄 templates/full-decks/knowledge-arch-blueprint/README.md 933 B
📄 templates/full-decks/knowledge-arch-blueprint/index.html 11.5 KB
📄 templates/full-decks/knowledge-arch-blueprint/style.css 4.9 KB
📄 templates/full-decks/obsidian-claude-gradient/README.md 901 B
📄 templates/full-decks/obsidian-claude-gradient/index.html 7.5 KB
📄 templates/full-decks/obsidian-claude-gradient/style.css 6 KB
📄 templates/full-decks/pitch-deck/README.md 524 B
📄 templates/full-decks/pitch-deck/index.html 7.9 KB
📄 templates/full-decks/pitch-deck/style.css 3.5 KB
📄 templates/full-decks/product-launch/README.md 545 B
📄 templates/full-decks/product-launch/index.html 6.4 KB
📄 templates/full-decks/product-launch/style.css 3.9 KB
📄 templates/full-decks/tech-sharing/README.md 522 B
📄 templates/full-decks/tech-sharing/index.html 8.9 KB
📄 templates/full-decks/tech-sharing/style.css 3.8 KB
📄 templates/full-decks/testing-safety-alert/README.md 967 B
📄 templates/full-decks/testing-safety-alert/index.html 11.1 KB
📄 templates/full-decks/testing-safety-alert/style.css 6.5 KB
📄 templates/full-decks/weekly-report/README.md 562 B
📄 templates/full-decks/weekly-report/index.html 8.3 KB
📄 templates/full-decks/weekly-report/style.css 4.9 KB
📄 templates/full-decks/xhs-pastel-card/README.md 1 KB
📄 templates/full-decks/xhs-pastel-card/index.html 9.1 KB
📄 templates/full-decks/xhs-pastel-card/style.css 5.5 KB
📄 templates/full-decks/xhs-post/README.md 628 B
📄 templates/full-decks/xhs-post/index.html 7.7 KB
📄 templates/full-decks/xhs-post/style.css 4 KB
📄 templates/full-decks/xhs-white-editorial/README.md 995 B
📄 templates/full-decks/xhs-white-editorial/index.html 10.6 KB
📄 templates/full-decks/xhs-white-editorial/style.css 5.6 KB
📄 templates/layout-showcase.html 2.2 KB
📄 templates/single-page/arch-diagram.html 2.8 KB
📄 templates/single-page/big-quote.html 1 KB
📄 templates/single-page/bullets.html 1.3 KB
📄 templates/single-page/chart-bar.html 1.5 KB
📄 templates/single-page/chart-line.html 1.9 KB
📄 templates/single-page/chart-pie.html 1.9 KB
📄 templates/single-page/chart-radar.html 1.8 KB
📄 templates/single-page/code.html 1.7 KB
📄 templates/single-page/comparison.html 2 KB
📄 templates/single-page/cover.html 1.7 KB
📄 templates/single-page/cta.html 1.6 KB
📄 templates/single-page/diff.html 1.9 KB
📄 templates/single-page/flow-diagram.html 1.8 KB
📄 templates/single-page/gantt.html 2.5 KB
📄 templates/single-page/image-grid.html 1.9 KB
📄 templates/single-page/image-hero.html 1.8 KB
📄 templates/single-page/kpi-grid.html 1.5 KB
📄 templates/single-page/mindmap.html 2.1 KB
📄 templates/single-page/process-steps.html 2.1 KB
📄 templates/single-page/pros-cons.html 1.8 KB
📄 templates/single-page/roadmap.html 2.1 KB
📄 templates/single-page/section-divider.html 989 B
📄 templates/single-page/stat-highlight.html 989 B
📄 templates/single-page/table.html 2 KB
📄 templates/single-page/terminal.html 2.1 KB
📄 templates/single-page/thanks.html 1.1 KB
📄 templates/single-page/three-column.html 1.2 KB
📄 templates/single-page/timeline.html 2.1 KB
📄 templates/single-page/toc.html 1.8 KB
📄 templates/single-page/todo-checklist.html 2.3 KB
📄 templates/single-page/two-column.html 1.5 KB
📄 templates/theme-showcase.html 6.3 KB