magazine-web-ppt

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Magazine Web Ppt

Magazine Web Ppt

这个 Skill 做什么

What This Skill Does

生成一份单文件 HTML的横向翻页 PPT,视觉基调是:
  • 电子杂志 + 电子墨水混血风格
  • WebGL 流体 / 等高线 / 色散背景(hero 页可见)
  • 衬线标题(Noto Serif SC + Playfair Display)+ 非衬线正文(Noto Sans SC + Inter)+ 等宽元数据(IBM Plex Mono)
  • Lucide 线性图标(不用 emoji)
  • 横向左右翻页(键盘 ← →、滚轮、触屏滑动、底部圆点、ESC 索引)
  • 主题平滑插值:翻到 hero 页时颜色和 shader 柔顺过渡
这个 skill 的美学不是"商务 PPT",也不是"消费互联网 UI"——它像 Monocle 杂志贴上了代码后的样子。
Generate a single-file HTML horizontal-swipe PPT with the following visual style:
  • Hybrid style of e-magazine + e-ink
  • WebGL fluid/contour/dispersion background (visible on hero page)
  • Serif titles (Noto Serif SC + Playfair Display) + sans-serif body text (Noto Sans SC + Inter) + monospaced metadata (IBM Plex Mono)
  • Lucide linear icons (no emojis)
  • Horizontal left/right page turning (keyboard ← →, scroll wheel, touch swipe, bottom dots, ESC for index)
  • Smooth theme interpolation: Colors and shaders transition smoothly when flipping to the hero page
The aesthetics of this skill are neither "business PPT" nor "consumer internet UI" — it looks like Monocle magazine combined with code.

何时使用

When to Use

合适的场景
  • 线下分享 / 行业内部讲话 / 私享会
  • AI 新产品发布 / demo day
  • 带有强烈个人风格的演讲
  • 需要"一次做完,不用翻页工具"的网页版 slides
不合适的场景
  • 大段表格数据、图表叠加(用常规 PPT)
  • 培训课件(信息密度不够)
  • 需要多人协作编辑(这是静态 HTML)
Suitable scenarios:
  • Offline sharing / internal industry talks / private sessions
  • AI new product launches / demo days
  • Speeches with strong personal style
  • Web-based slides that "can be done once without page-turning tools"
Unsuitable scenarios:
  • Large sections of tabular data, overlapping charts (use regular PPT)
  • Training courseware (insufficient information density)
  • Needs multi-person collaborative editing (this is static HTML)

工作流

Workflow

Step 0 · 选方向(Direction · 必做的第一步)

Step 0 · Choose Direction (Mandatory First Step)

在问 6 个澄清问题之前,先让用户在 5 个 magazine 方向里挑一个。每个方向都把"主题色 / 推荐 layout / chrome 风格 / 推荐 slide 数"打包好,挑了方向就回答掉一半澄清问题。
打开
references/styles.md
,整段拷过来给用户看 5 个方向的 1-line summary,然后让他选:
1. Monocle Editorial · 国际杂志风 ✦ 默认
2. WIRED Tech · 数据 + 工程
3. Kinfolk Slow · 慢生活 / 人文
4. Domus Architectural · 建筑 / 空间感
5. Lab / Reference · 学术 + 工艺手册
如果用户说"不知道,你推荐"——默认推 Monocle Editorial,因为它失败概率最低。如果用户提到"AI / benchmark / 技术发布"——推 WIRED;"读书 / 私享 / 朋友圈"——推 Kinfolk;"设计 / 建筑 / portfolio"——推 Domus;"研究 / 学术 / 方法论"——推 Lab。
挑完方向后,在项目目录下创建或更新
项目记录.md
,第一行写清方向 + 主题色 + 受众 + 时长(模板见
styles.md
末尾)。全程不要换方向——半路换 = 前面全废。
Before asking 6 clarification questions, let the user choose one of 5 magazine directions first. Each direction packages "theme color / recommended layout / chrome style / recommended number of slides" — choosing a direction answers half of the clarification questions.
Open
references/styles.md
, copy the entire section to show users the 1-line summary of the 5 directions, then ask them to choose:
1. Monocle Editorial · International Magazine Style ✦ Default
2. WIRED Tech · Data + Engineering
3. Kinfolk Slow · Slow Living / Humanities
4. Domus Architectural · Architecture / Sense of Space
5. Lab / Reference · Academic + Craft Manual
If the user says "I don't know, recommend one" — default to Monocle Editorial, as it has the lowest failure rate. If the user mentions "AI / benchmark / tech launch" — recommend WIRED; "reading / private sharing / social media" — recommend Kinfolk; "design / architecture / portfolio" — recommend Domus; "research / academic / methodology" — recommend Lab.
After choosing the direction, create or update
项目记录.md
(Project Record.md) in the project directory, and write the direction + theme color + audience + duration on the first line (template at the end of
styles.md
). Do not change the direction halfway — changing it will invalidate all previous work.

Step 1 · 需求澄清(动手前必做)

Step 1 · Requirement Clarification (Mandatory Before Starting)

如果用户已经给了完整的大纲 + 图片,可以跳过直接进 Step 2。
如果用户只给了主题或一个模糊想法,用这 6 个问题逐个对齐后再动手。不要基于猜测就开始写 slide——一旦结构定错,后期翻修代价很高:
If the user has provided a complete outline + images, skip directly to Step 2.
If the user only provides a theme or vague idea, align requirements with these 6 questions before starting. Do not start writing slides based on guesses — once the structure is wrong, the cost of later revisions is very high:

6 问澄清清单

6 Clarification Questions

第 5 题已在 Step 0 选方向时一并回答(方向→主题色)。下面的 5 题里,第 5 题留白即可。
#问题为什么要问
1受众是谁?分享场景?(行业内部 / 商业发布 / demo day / 私享会)决定语言风格和深度
2分享时长?15 分钟 ≈ 10 页,30 分钟 ≈ 20 页,45 分钟 ≈ 25-30 页(每个方向的推荐范围见
styles.md
)
3有没有原始素材?(文档 / 数据 / 旧 PPT / 文章链接)有素材就基于素材,没有就帮他搭
4有没有图片?放在哪?详见下方"图片约定"
5想要哪套主题色?✓ 已在 Step 0 由方向决定
6有没有硬约束?(必须包含 XX 数据 / 不能出现 YY)避免返工
Question 5 is already answered in Step 0 when choosing the direction (direction → theme color). Leave Question 5 blank in the following 5 questions.
#QuestionWhy Ask
1Who is the audience? What is the sharing scenario? (internal industry / commercial launch / demo day / private session)Determines language style and depth
2What is the sharing duration?15 minutes ≈ 10 pages, 30 minutes ≈ 20 pages, 45 minutes ≈ 25-30 pages (recommended range for each direction is in
styles.md
)
3Are there any original materials? (documents / data / old PPT / article links)Base on materials if available; build the structure if not
4Are there any images? Where to place them?See "Image Guidelines" below
5Which theme color set do you want?✓ Answered in Step 0 via direction selection
6Are there any hard constraints? (must include XX data / cannot include YY)Avoid rework

大纲协助(如果用户没有大纲)

Outline Assistance (If User Has No Outline)

用"叙事弧"模板搭骨架,再填内容:
钩子(Hook)       → 1 页   : 抛一个反差 / 问题 / 硬数据让人停下来
定调(Context)    → 1-2 页 : 说明背景 / 你是谁 / 为什么讲这个
主体(Core)       → 3-5 页 : 核心内容,用 Layout 4/5/6/9/10 穿插
转折(Shift)      → 1 页   : 打破预期 / 提出新观点
收束(Takeaway)   → 1-2 页 : 金句 / 悬念问题 / 行动建议
叙事弧 + 页数规划 + 主题节奏表(见
layouts.md
),三张表对齐后再进 Step 2。
大纲建议保存为
项目记录.md
大纲-v1.md
,便于后续迭代。
Use the "narrative arc" template to build the skeleton, then fill in content:
Hook       → 1 page   : Present a contrast / question / hard data to grab attention
Context    → 1-2 pages : Explain background / who you are / why you're talking about this
Core       → 3-5 pages : Core content, interspersed with Layout 4/5/6/9/10
Shift      → 1 page   : Break expectations / propose new perspectives
Takeaway   → 1-2 pages : Golden quote / suspense question / action recommendation
Align the narrative arc + page count plan + theme rhythm table (see
layouts.md
), then proceed to Step 2.
It is recommended to save the outline as
项目记录.md
or
大纲-v1.md
(Outline-v1.md) for subsequent iterations.

图片约定(告知用户)

Image Guidelines (Inform User)

在动手前向用户说清:
  • 文件夹位置:
    项目/XXX/ppt/images/
    下(和
    index.html
    同级)
  • 命名规范:
    {页号}-{语义}.{ext}
    ,例如
    01-cover.jpg
    /
    03-figma.jpg
    /
    05-dashboard.png
    • 页号补零便于排序
    • 语义用英文,短、具体、和内容对应
  • 规格建议:
    • 单张 ≥ 1600px 宽(避免大屏模糊)
    • JPG 用于照片/截图,PNG 用于透明 UI/图表
    • 总大小控制在 10MB 内(影响翻页流畅度)
  • 如何替换:保持同名覆盖最稳(HTML 里不用改路径);如果文件名变了,记得全局搜
    images/旧名
    改成新名
  • 没图怎么办:和用户对齐,可以先用占位色块生成结构,等图片后期补;但要告知 layout 4/5/10 等图文混排页没图就没法验证视觉效果
Clarify the following to the user before starting:
  • Folder location: Under
    项目/XXX/ppt/images/
    (same level as
    index.html
    )
  • Naming convention:
    {page-number}-{semantics}.{ext}
    , e.g.,
    01-cover.jpg
    /
    03-figma.jpg
    /
    05-dashboard.png
    • Pad page numbers with zeros for sorting
    • Use short, specific English semantics corresponding to content
  • Specification suggestions:
    • Single image ≥ 1600px wide (avoid blurriness on large screens)
    • JPG for photos/screenshots, PNG for transparent UI/charts
    • Total size ≤ 10MB (affects page-turning smoothness)
  • How to replace: The safest way is to overwrite with the same name (no need to change paths in HTML); if the file name changes, remember to globally search for
    images/old-name
    and replace with the new name
  • What if no images? Align with the user: you can generate the structure with placeholder blocks first, then add images later; but inform the user that layout pages like 4/5/10 with mixed text and images cannot verify visual effects without images

Step 2 · 拷贝模板

Step 2 · Copy Template

assets/template.html
拷贝一份到目标位置(通常是
项目/XXX/ppt/index.html
),同时在同级建一个
images/
文件夹准备接图片。
bash
mkdir -p "项目/XXX/ppt/images"
cp "<SKILL_ROOT>/assets/template.html" "项目/XXX/ppt/index.html"
template.html
是一个完整可运行的文件——CSS、WebGL shader、翻页 JS、字体/图标 CDN 全已预设好,只有
<main id="deck">
里面是 3 个示例 slide(封面、章节幕封、空白填充页)。
Copy a copy from
assets/template.html
to the target location (usually
项目/XXX/ppt/index.html
), and create an
images/
folder at the same level to prepare for receiving images.
bash
mkdir -p "项目/XXX/ppt/images"
cp "<SKILL_ROOT>/assets/template.html" "项目/XXX/ppt/index.html"
template.html
is a fully runnable file — CSS, WebGL shader, page-turning JS, font/icon CDN are all pre-configured, only the
<main id="deck">
contains 3 sample slides (cover, chapter divider, blank filler page).

2.1 · 必改占位符(容易漏

2.1 · Mandatory Placeholder Replacement (Easy to Miss)

拷贝后立刻改掉以下占位符,否则浏览器 Tab 会显示"[必填] 替换为 PPT 标题"这种尴尬文字:
位置原始需改为
<title>
[必填] 替换为 PPT 标题 · Deck Title
实际 deck 标题(如
一种新的工作方式 · Luke Wroblewski
)
每次拷贝完 template.html 第一件事:grep 一下"[必填]" 确认全部替换完。
Immediately replace the following placeholders after copying, otherwise the browser tab will display embarrassing text like "[Required] Replace with PPT Title":
LocationOriginalNeed to Change to
<title>
[必填] 替换为 PPT 标题 · Deck Title
Actual deck title (e.g.,
A New Way of Working · Luke Wroblewski
)
First thing after copying template.html: grep for "[必填]" to confirm all placeholders are replaced.

2.2 · 选定主题色(5 套预设 · 不允许自定义)

2.2 · Select Theme Color (5 Presets · Customization Not Allowed)

本 skill 只允许从 5 套精心调配的预设里选一套,不接受用户自定义 hex 值——颜色搭配错了画面瞬间变丑,保护美学比给自由更重要。
#主题适合
1🖋 墨水经典通用 / 商业发布 / 不知道选啥的默认
2🌊 靛蓝瓷科技 / 研究 / 数据 / 技术发布会
3🌿 森林墨自然 / 可持续 / 文化 / 非虚构
4🍂 牛皮纸怀旧 / 人文 / 文学 / 独立杂志
5🌙 沙丘艺术 / 设计 / 创意 / 画廊
操作:
  1. 基于内容主题推荐一套,或直接问用户选哪一套
  2. 打开
    references/themes.md
    ,找到对应主题的
    :root
  3. 整体替换
    assets/template.html
    (已拷贝版本)开头
    :root{
    块里标有"主题色"注释的那几行(
    --ink
    /
    --ink-rgb
    /
    --paper
    /
    --paper-rgb
    /
    --paper-tint
    /
    --ink-tint
    )
  4. 其他 CSS 都走
    var(--...)
    ,无需任何其他改动
硬规则:
  • 一份 deck 只用一套主题,不要中途换色
  • 不要接受用户给的任意 hex 值——委婉拒绝并展示 5 套让选
  • 不要混搭(例如 ink 取墨水经典、paper 取沙丘)——会彻底违和
This skill only allows choosing one of 5 carefully curated preset sets, and does not accept custom hex values from users — wrong color matching will instantly ruin the visual effect, so protecting aesthetics is more important than giving freedom.
#ThemeSuitable For
1🖋 Ink ClassicGeneral / commercial launch / default when unsure
2🌊 Indigo PorcelainTech / research / data / tech conferences
3🌿 Forest InkNature / sustainability / culture / non-fiction
4🍂 Kraft PaperNostalgia / humanities / literature / independent magazines
5🌙 DuneArt / design / creativity / galleries
Operations:
  1. Recommend a set based on content theme, or directly ask the user to choose
  2. Open
    references/themes.md
    , find the
    :root
    block corresponding to the theme
  3. Replace the entire section of lines marked with "theme color" comments (
    --ink
    /
    --ink-rgb
    /
    --paper
    /
    --paper-rgb
    /
    --paper-tint
    /
    --ink-tint
    ) in the
    :root{
    block at the beginning of the copied
    assets/template.html
  4. Other CSS uses
    var(--...)
    , no other changes needed
Hard Rules:
  • Only use one theme set per deck, do not change colors halfway
  • Do not accept arbitrary hex values from users — politely decline and show the 5 sets for selection
  • Do not mix and match (e.g., take ink from Ink Classic and paper from Dune) — it will be completely inconsistent

Step 3 · 填充内容

Step 3 · Fill Content

3.0 · 预检:类名必须在 template.html 里有定义(最重要

3.0 · Pre-check: Class Names Must Be Defined in template.html (Most Important)

这是所有生成问题的源头。layouts.md 的骨架使用了很多类名(
h-hero
/
h-xl
/
stat-card
/
pipeline
/
grid-2-7-5
等),如果
assets/template.html
<style>
里没有对应定义,浏览器会 fallback 到默认样式——大标题变成非衬线、数据卡片挤成一团、pipeline 糊成一行、图片堆到页面底部。
在写任何 slide 代码之前:
  1. 先 Read
    assets/template.html
    (至少读到
    <style>
    块末尾)
  2. 对照 layouts.md 的 Pre-flight 列表,确认你要用的每个类都在
    <style>
    里存在
  3. 如果某个类缺失:在 template.html 的
    <style>
    里补上
    ,不要在每个 slide 里 inline 重写
  4. template.html 是唯一的类名来源——不要发明新类名,如需自定义用
    style="..."
    inline
常见容易遗漏的类(必须预先确认存在):
h-hero
/
h-xl
/
h-sub
/
h-md
/
lead
/
kicker
/
meta-row
/
stat-card
/
stat-label
/
stat-nb
/
stat-unit
/
stat-note
/
pipeline-section
/
pipeline-label
/
pipeline
/
step
/
step-nb
/
step-title
/
step-desc
/
grid-2-7-5
/
grid-2-6-6
/
grid-2-8-4
/
grid-3-3
/
grid-6
/
grid-3
/
grid-4
/
frame
/
frame-img
/
img-cap
/
callout
/
callout-src
/
chrome
/
foot
This is the source of all generation issues. The skeleton in layouts.md uses many class names (
h-hero
/
h-xl
/
stat-card
/
pipeline
/
grid-2-7-5
, etc.). If there is no corresponding definition in the
<style>
block of
assets/template.html
, the browser will fall back to default styles — large titles become sans-serif, data cards are squeezed together, pipelines are blurred into one line, images pile up at the bottom of the page.
Before writing any slide code:
  1. Read
    assets/template.html
    first
    (at least until the end of the
    <style>
    block)
  2. Compare with the Pre-flight list in layouts.md to confirm each class you want to use exists in the
    <style>
    block
  3. If a class is missing: Add it to the
    <style>
    block of template.html
    , do not rewrite it inline in each slide
  4. template.html is the only source of class names — do not invent new class names; use
    style="..."
    inline for customization if needed
Common easily missed classes (must confirm existence in advance):
h-hero
/
h-xl
/
h-sub
/
h-md
/
lead
/
kicker
/
meta-row
/
stat-card
/
stat-label
/
stat-nb
/
stat-unit
/
stat-note
/
pipeline-section
/
pipeline-label
/
pipeline
/
step
/
step-nb
/
step-title
/
step-desc
/
grid-2-7-5
/
grid-2-6-6
/
grid-2-8-4
/
grid-3-3
/
grid-6
/
grid-3
/
grid-4
/
frame
/
frame-img
/
img-cap
/
callout
/
callout-src
/
chrome
/
foot

3.0.5 · 规划主题节奏(和类预检同等重要)

3.0.5 · Plan Theme Rhythm (Equally Important as Class Pre-check)

在挑布局之前,必须先列出每一页的主题 class(
hero dark
/
hero light
/
light
/
dark
)并写到文档或草稿里对齐。详细规则看
references/layouts.md
开头的"主题节奏规划"一节。
强制规则:
  • 每页 section 必须带
    light
    /
    dark
    /
    hero light
    /
    hero dark
    之一,不要只写
    hero
  • 连续 3 页以上同主题 = 视觉疲劳,不允许
  • 8 页以上必须有 ≥1 个
    hero dark
    + ≥1 个
    hero light
  • 整个 deck 不能只有
    light
    正文页,必须有
    dark
    正文页制造呼吸
  • 每 3-4 页插入 1 个 hero 页(封面/幕封/问题/大引用)
生成后自检:
grep 'class="slide' index.html
列出所有主题,人工确认节奏合理再交付。
Before choosing layouts, you must list the theme class (
hero dark
/
hero light
/
light
/
dark
) for each page and write it in a document or draft for alignment. Detailed rules are in the "Theme Rhythm Planning" section at the beginning of
references/layouts.md
.
Mandatory Rules:
  • Each page section must have one of
    light
    /
    dark
    /
    hero light
    /
    hero dark
    , do not only write
    hero
  • More than 3 consecutive pages with the same theme = visual fatigue, not allowed
  • Decks with 8+ pages must have ≥1
    hero dark
    + ≥1
    hero light
  • The entire deck cannot only have
    light
    body pages, must have
    dark
    body pages to create visual breathing space
  • Insert 1 hero page (cover/divider/question/big quote) every 3-4 pages
Self-check after generation:
grep 'class="slide' index.html
to list all themes, manually confirm the rhythm is reasonable before delivery.

3.1 · 挑布局

3.1 · Choose Layout

不要从零写 slide。打开
references/layouts.md
,里面有 10 种现成布局骨架,每种都是完整可粘贴的
<section>
代码块:
Layout用途
1. 开场封面第 1 页
2. 章节幕封每幕开场
3. 数据大字报抛硬数据
4. 左文右图(Quote + Image)身份反差 / 故事
5. 图片网格多图对比 / 截图实证
6. 两列流水线(Pipeline)工作流程
7. 悬念收束 / 问题页幕末 / 收尾
8. 大引用页(Big Quote)衬线金句 / takeaway
9. 并列对比(Before / After)旧模式 vs 新模式
10. 图文混排(Lead Image + Side Text)信息密集的图文页
选对应 layout,粘过去,改文案和图片路径即可。务必先完成 3.0 预检
Do not write slides from scratch. Open
references/layouts.md
, which contains 10 ready-made layout skeletons, each is a complete pasteable
<section>
code block:
LayoutPurpose
1. Opening CoverPage 1
2. Chapter DividerOpening of each act
3. Data Big PosterPresent hard data
4. Text Left, Image Right (Quote + Image)Identity contrast / storytelling
5. Image GridMulti-image comparison / screenshot evidence
6. Two-column PipelineWorkflow
7. Suspense Closure / Question PageEnd of act / conclusion
8. Big Quote PageSerif golden quote / takeaway
9. Side-by-side Comparison (Before / After)Old mode vs new mode
10. Mixed Text and Image (Lead Image + Side Text)Information-dense text-image page
Select the corresponding layout, paste it, then modify the copy and image paths. Be sure to complete Step 3.0 pre-check first.

3.2 · 图片比例规范

3.2 · Image Ratio Guidelines

永远用标准比例,不要用原图奇葩比例(如
2592/1798
):
场景推荐比例
左文右图 主图16:10 或 4:3 +
max-height:56vh
图片网格(多图对比)固定
height:26vh
,不用 aspect-ratio
左小图 + 右文字1:1 或 3:2
全屏主视觉16:9 +
max-height:64vh
图文混排小插图3:2 或 3:4
图片绝不使用
align-self:end
——会滑到 cell 底被浏览器工具栏遮挡。用 grid 容器 +
align-items:start
(template 已预设)让图片贴顶即可;左列若想贴底,用 flex column +
justify-content:space-between
组件细节(字体、颜色、网格、图标、callout、stat-card 等)在
references/components.md
Always use standard ratios, do not use weird original ratios (e.g.,
2592/1798
):
ScenarioRecommended Ratio
Main image for Text Left, Image Right16:10 or 4:3 +
max-height:56vh
Image Grid (multi-image comparison)Fixed
height:26vh
, no aspect-ratio
Small left image + right text1:1 or 3:2
Full-screen main visual16:9 +
max-height:64vh
Small illustration for mixed text and image3:2 or 3:4
Never use
align-self:end
for images
— it will slide to the bottom of the cell and be blocked by the browser toolbar. Use grid container +
align-items:start
(pre-configured in template) to make images stick to the top; if you want the left column to stick to the bottom, use flex column +
justify-content:space-between
.
Component details (fonts, colors, grids, icons, callouts, stat-cards, etc.) are in
references/components.md
.

Step 4 · 对照检查清单自检

Step 4 · Self-check Against Checklist

生成完一定要打开
references/checklist.md
,逐项对照。里面总结了真实迭代过程中踩过的所有坑,P0 级别的问题(emoji、图片撑破、标题换行、字体分工)必须全部通过。
特别要注意的几条:
  1. 大标题必须是衬线字体——如果显示成非衬线,99% 是 Step 3.0 预检没做,
    h-hero
    类在 template.html 里缺失
  2. 图片网格里只用
    height:Nvh
    ,不用
    aspect-ratio
    (会撑破)
  3. 图片不能堆到页面底部——不要用
    align-self:end
    ,用 grid +
    align-items:start
    (见 Step 3.2)
  4. 图片只能用标准比例(16:10 / 4:3 / 3:2 / 1:1 / 16:9),不要复制原图的奇葩比例
  5. 中文大标题 ≤ 5 字且
    nowrap
    (避免 1 字 1 行)
  6. 用 Lucide,不用 emoji
  7. 标题用衬线,正文用非衬线,元数据用等宽
After generation, be sure to open
references/checklist.md
and check item by item. It summarizes all pitfalls encountered in real iteration processes, and P0-level issues (emojis, image overflow, title line breaks, font division) must all pass.
Several key points to pay special attention to:
  1. Large titles must be serif fonts — if they display as sans-serif, 99% of the time Step 3.0 pre-check was not done and the
    h-hero
    class is missing in template.html
  2. Only use
    height:Nvh
    in image grids, not
    aspect-ratio
    (it will cause overflow)
  3. Images cannot pile up at the bottom of the page — do not use
    align-self:end
    , use grid +
    align-items:start
    (see Step 3.2)
  4. Images can only use standard ratios (16:10 / 4:3 / 3:2 / 1:1 / 16:9), do not copy weird original ratios
  5. Chinese large titles ≤ 5 characters and
    nowrap
    (avoid one character per line)
  6. Use Lucide, not emojis
  7. Titles use serif, body text uses sans-serif, metadata uses monospaced

Step 5 · 本地预览

Step 5 · Local Preview

直接在浏览器打开
index.html
就行。macOS 下:
bash
open "项目/XXX/ppt/index.html"
不需要本地服务器。图片走相对路径
images/xxx.png
Just open
index.html
directly in the browser. On macOS:
bash
open "项目/XXX/ppt/index.html"
No local server is needed. Images use relative paths
images/xxx.png
.

Step 6 · 迭代

Step 6 · Iteration

根据用户反馈修改——模板的 CSS 已经高度参数化,90% 的调整都是改 inline style(字号
font-size:Xvw
/ 高度
height:Yvh
/ 间距
gap:Zvh
)。

Modify based on user feedback — the template's CSS is highly parameterized, 90% of adjustments are changing inline styles (font size
font-size:Xvw
/ height
height:Yvh
/ gap
gap:Zvh
).

资源文件导览

Resource File Overview

magazine-web-ppt/
├── SKILL.md              ← 你正在读
├── assets/
│   ├── template.html     ← 完整的可运行模板(种子文件)
│   └── example-slides.html ← 9 页样例 deck(用于 Examples 预览)
└── references/
    ├── styles.md         ← 5 个 magazine 方向(Monocle / WIRED / Kinfolk / Domus / Lab)
    ├── components.md     ← 组件手册(字体、色、网格、图标、callout、stat、pipeline...)
    ├── layouts.md        ← 10 种页面布局骨架(可直接粘贴)
    ├── themes.md         ← 5 套主题色预设(只能选不能自定义)
    └── checklist.md      ← 质量检查清单(P0/P1/P2/P3 分级)
加载顺序建议
  1. 先读完
    SKILL.md
    (这个文件)了解整体
  2. Step 0 选方向时,读
    styles.md
    ——5 个方向各自打包好了主题色 + 推荐 layout + chrome 风格
  3. Step 1 需求澄清完成后,如果方向需要确认,再读
    themes.md
    看色板细节
  4. 动手前 Read
    assets/template.html
    <style>
    ——这是类名的唯一来源,缺类会导致整页样式崩
  5. layouts.md
    挑布局(顶部有 Pre-flight 类名清单和主题节奏规划)
  6. 细节调整时读
    components.md
    查组件
  7. 生成后读
    checklist.md
    自检(顶部 P0-0 规则强制预检)
magazine-web-ppt/
├── SKILL.md              ← You are reading this
├── assets/
│   ├── template.html     ← Complete runnable template (seed file)
│   └── example-slides.html ← 9-page sample deck (for preview)
└── references/
    ├── styles.md         ← 5 magazine directions (Monocle / WIRED / Kinfolk / Domus / Lab)
    ├── components.md     ← Component manual (fonts, colors, grids, icons, callouts, stats, pipelines...)
    ├── layouts.md        ← 10 page layout skeletons (can be directly pasted)
    ├── themes.md         ← 5 preset theme color sets (only selectable, not customizable)
    └── checklist.md      ← Quality checklist (P0/P1/P2/P3 grading)
Recommended loading order:
  1. First read
    SKILL.md
    (this file) to understand the overall picture
  2. When choosing direction in Step 0, read
    styles.md
    — each of the 5 directions packages theme color + recommended layout + chrome style
  3. After completing requirement clarification in Step 1, if direction needs confirmation, read
    themes.md
    to see color palette details
  4. Read the
    <style>
    block of
    assets/template.html
    before starting
    — this is the only source of class names; missing classes will cause entire page styles to break
  5. Read
    layouts.md
    to choose layouts (top has Pre-flight class name list and theme rhythm planning)
  6. Read
    components.md
    to check components when adjusting details
  7. Read
    checklist.md
    for self-check after generation (top P0-0 rules are mandatory pre-checks)

核心设计原则(哲学)

Core Design Principles (Philosophy)

这些原则是"一人公司"分享 PPT 的 5 轮迭代总结出来的。违反其中任何一条,视觉感都会垮。
  1. 克制优于炫技 — WebGL 背景只在 hero 页透出,普通页几乎看不见
  2. 结构优于装饰 — 不用阴影、不用浮动卡片、不用 padding box,一切信息靠大字号 + 字体对比 + 网格留白
  3. 内容层级由字号和字体共同定义 — 最大衬线 = 主标题,中衬线 = 副标,大非衬线 = lead,小非衬线 = body,等宽 = 元数据
  4. 图片是第一公民 — 图片只裁底部,保证顶部和左右完整;网格用
    height:Nvh
    固定,不要用
    aspect-ratio
  5. 节奏靠 hero 页 — hero 和 non-hero 交替,才不累眼睛
  6. 术语统一 — Skills 就是 Skills,不要中英混合翻译
These principles are summarized from 5 iterations of "one-person company" sharing PPTs. Violating any of them will ruin the visual effect.
  1. Restraint over flashiness — WebGL background only shows through on hero pages, almost invisible on regular pages
  2. Structure over decoration — no shadows, no floating cards, no padding boxes; all information is defined by large font sizes + font contrast + grid white space
  3. Content hierarchy is defined by both font size and font type — largest serif = main title, medium serif = subtitle, large sans-serif = lead, small sans-serif = body, monospaced = metadata
  4. Images are first-class citizens — images are only cropped at the bottom to ensure top and left/right are complete; grids use fixed
    height:Nvh
    , do not use
    aspect-ratio
    to stretch
  5. Rhythm relies on hero pages — alternating hero and non-hero pages prevents eye fatigue
  6. Terminology consistency — Skills are Skills, do not mix Chinese and English translations

参考作品

Reference Works

本 skill 的视觉基调参考了:
  • 歸藏 "一人公司:被 AI 折叠的组织" 分享(2026-04-22,27 页)
  • Monocle 杂志的版式
  • YC 总裁 Garry Tan "Thin Harness, Fat Skills" 那篇博客的 demo
可以把它们当做风格锚点。
The visual style of this skill references:
  • Guizang's "One-Person Company: Organizations Folded by AI" sharing (April 22, 2026, 27 pages)
  • Layouts of Monocle magazine
  • The demo in YC President Garry Tan's blog "Thin Harness, Fat Skills"
You can use them as style anchors.