create-yss-spec 2.1.8 → 2.1.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/template/.agents/skills/ask-matt/SKILL.md +0 -1
- package/template/.agents/skills/code-review/SKILL.md +1 -1
- package/template/.agents/skills/grill-me/SKILL.md +1 -1
- package/template/.agents/skills/grill-with-docs/SKILL.md +2 -1
- package/template/.agents/skills/maintaining-skills/SKILL.md +25 -0
- package/template/.agents/skills/product-design-prototype/SKILL.md +1 -1
- package/template/.agents/skills/to-spec/SKILL.md +1 -1
- package/template/.agents/skills/to-tickets/SKILL.md +1 -1
- package/template/.agents/skills/yss-components/SKILL.md +85 -10
- package/template/.agents/skills/yss-design-system/SKILL.md +1 -1
- package/template/.agents/skills/yss-hook/SKILL.md +141 -72
- package/template/.agents/skills/yss-hook/references/frontend-docs.md +3 -2
- package/template/.agents/skills/yss-product-lifecycle/SKILL.md +10 -9
- package/template/.agents/skills/yss-product-lifecycle/references/matt-yss-adapter.md +29 -17
- package/template/.agents/skills/yss-product-lifecycle/references/orchestration-contract.yaml +87 -2
- package/template/.agents/skills/yss-product-lifecycle/references/orchestration.md +6 -6
- package/template/.agents/skills/yss-product-lifecycle/references/state-model.md +1 -1
- package/template/.agents/skills/yss-prototype-stage/SKILL.md +1 -1
- package/template/.claude/skills/ask-matt/SKILL.md +0 -1
- package/template/.claude/skills/code-review/SKILL.md +1 -1
- package/template/.claude/skills/grill-me/SKILL.md +1 -1
- package/template/.claude/skills/grill-with-docs/SKILL.md +2 -1
- package/template/.claude/skills/maintaining-skills/SKILL.md +25 -0
- package/template/.claude/skills/product-design-prototype/SKILL.md +1 -1
- package/template/.claude/skills/to-spec/SKILL.md +1 -1
- package/template/.claude/skills/to-tickets/SKILL.md +1 -1
- package/template/.claude/skills/yss-components/SKILL.md +85 -10
- package/template/.claude/skills/yss-design-system/SKILL.md +1 -1
- package/template/.claude/skills/yss-hook/SKILL.md +141 -72
- package/template/.claude/skills/yss-hook/references/frontend-docs.md +3 -2
- package/template/.claude/skills/yss-product-lifecycle/SKILL.md +10 -9
- package/template/.claude/skills/yss-product-lifecycle/references/matt-yss-adapter.md +29 -17
- package/template/.claude/skills/yss-product-lifecycle/references/orchestration-contract.yaml +87 -2
- package/template/.claude/skills/yss-product-lifecycle/references/orchestration.md +6 -6
- package/template/.claude/skills/yss-product-lifecycle/references/state-model.md +1 -1
- package/template/.claude/skills/yss-prototype-stage/SKILL.md +1 -1
- package/template/.codex/skills/ask-matt/SKILL.md +0 -1
- package/template/.codex/skills/code-review/SKILL.md +1 -1
- package/template/.codex/skills/grill-me/SKILL.md +1 -1
- package/template/.codex/skills/grill-with-docs/SKILL.md +2 -1
- package/template/.codex/skills/maintaining-skills/SKILL.md +25 -0
- package/template/.codex/skills/product-design-prototype/SKILL.md +1 -1
- package/template/.codex/skills/to-spec/SKILL.md +1 -1
- package/template/.codex/skills/to-tickets/SKILL.md +1 -1
- package/template/.codex/skills/yss-components/SKILL.md +85 -10
- package/template/.codex/skills/yss-design-system/SKILL.md +1 -1
- package/template/.codex/skills/yss-hook/SKILL.md +141 -72
- package/template/.codex/skills/yss-hook/references/frontend-docs.md +3 -2
- package/template/.codex/skills/yss-product-lifecycle/SKILL.md +10 -9
- package/template/.codex/skills/yss-product-lifecycle/references/matt-yss-adapter.md +29 -17
- package/template/.codex/skills/yss-product-lifecycle/references/orchestration-contract.yaml +87 -2
- package/template/.codex/skills/yss-product-lifecycle/references/orchestration.md +6 -6
- package/template/.codex/skills/yss-product-lifecycle/references/state-model.md +1 -1
- package/template/.codex/skills/yss-prototype-stage/SKILL.md +1 -1
- package/template/.hermes/skills/ask-matt/SKILL.md +0 -1
- package/template/.hermes/skills/code-review/SKILL.md +1 -1
- package/template/.hermes/skills/grill-me/SKILL.md +1 -1
- package/template/.hermes/skills/grill-with-docs/SKILL.md +2 -1
- package/template/.hermes/skills/maintaining-skills/SKILL.md +25 -0
- package/template/.hermes/skills/product-design-prototype/SKILL.md +1 -1
- package/template/.hermes/skills/to-spec/SKILL.md +1 -1
- package/template/.hermes/skills/to-tickets/SKILL.md +1 -1
- package/template/.hermes/skills/yss-components/SKILL.md +85 -10
- package/template/.hermes/skills/yss-design-system/SKILL.md +1 -1
- package/template/.hermes/skills/yss-hook/SKILL.md +141 -72
- package/template/.hermes/skills/yss-hook/references/frontend-docs.md +3 -2
- package/template/.hermes/skills/yss-product-lifecycle/SKILL.md +10 -9
- package/template/.hermes/skills/yss-product-lifecycle/references/matt-yss-adapter.md +29 -17
- package/template/.hermes/skills/yss-product-lifecycle/references/orchestration-contract.yaml +87 -2
- package/template/.hermes/skills/yss-product-lifecycle/references/orchestration.md +6 -6
- package/template/.hermes/skills/yss-product-lifecycle/references/state-model.md +1 -1
- package/template/.hermes/skills/yss-prototype-stage/SKILL.md +1 -1
- package/template/.pi/skills/ask-matt/SKILL.md +0 -1
- package/template/.pi/skills/code-review/SKILL.md +1 -1
- package/template/.pi/skills/grill-me/SKILL.md +1 -1
- package/template/.pi/skills/grill-with-docs/SKILL.md +2 -1
- package/template/.pi/skills/maintaining-skills/SKILL.md +25 -0
- package/template/.pi/skills/product-design-prototype/SKILL.md +1 -1
- package/template/.pi/skills/to-spec/SKILL.md +1 -1
- package/template/.pi/skills/to-tickets/SKILL.md +1 -1
- package/template/.pi/skills/yss-components/SKILL.md +85 -10
- package/template/.pi/skills/yss-design-system/SKILL.md +1 -1
- package/template/.pi/skills/yss-hook/SKILL.md +141 -72
- package/template/.pi/skills/yss-hook/references/frontend-docs.md +3 -2
- package/template/.pi/skills/yss-product-lifecycle/SKILL.md +10 -9
- package/template/.pi/skills/yss-product-lifecycle/references/matt-yss-adapter.md +29 -17
- package/template/.pi/skills/yss-product-lifecycle/references/orchestration-contract.yaml +87 -2
- package/template/.pi/skills/yss-product-lifecycle/references/orchestration.md +6 -6
- package/template/.pi/skills/yss-product-lifecycle/references/state-model.md +1 -1
- package/template/.pi/skills/yss-prototype-stage/SKILL.md +1 -1
- package/template/.qoder/skills/ask-matt/SKILL.md +0 -1
- package/template/.qoder/skills/code-review/SKILL.md +1 -1
- package/template/.qoder/skills/grill-me/SKILL.md +1 -1
- package/template/.qoder/skills/grill-with-docs/SKILL.md +2 -1
- package/template/.qoder/skills/maintaining-skills/SKILL.md +25 -0
- package/template/.qoder/skills/product-design-prototype/SKILL.md +1 -1
- package/template/.qoder/skills/to-spec/SKILL.md +1 -1
- package/template/.qoder/skills/to-tickets/SKILL.md +1 -1
- package/template/.qoder/skills/yss-components/SKILL.md +85 -10
- package/template/.qoder/skills/yss-design-system/SKILL.md +1 -1
- package/template/.qoder/skills/yss-hook/SKILL.md +141 -72
- package/template/.qoder/skills/yss-hook/references/frontend-docs.md +3 -2
- package/template/.qoder/skills/yss-product-lifecycle/SKILL.md +10 -9
- package/template/.qoder/skills/yss-product-lifecycle/references/matt-yss-adapter.md +29 -17
- package/template/.qoder/skills/yss-product-lifecycle/references/orchestration-contract.yaml +87 -2
- package/template/.qoder/skills/yss-product-lifecycle/references/orchestration.md +6 -6
- package/template/.qoder/skills/yss-product-lifecycle/references/state-model.md +1 -1
- package/template/.qoder/skills/yss-prototype-stage/SKILL.md +1 -1
- package/template/.trae/skills/ask-matt/SKILL.md +0 -1
- package/template/.trae/skills/code-review/SKILL.md +1 -1
- package/template/.trae/skills/grill-me/SKILL.md +1 -1
- package/template/.trae/skills/grill-with-docs/SKILL.md +2 -1
- package/template/.trae/skills/maintaining-skills/SKILL.md +25 -0
- package/template/.trae/skills/product-design-prototype/SKILL.md +1 -1
- package/template/.trae/skills/to-spec/SKILL.md +1 -1
- package/template/.trae/skills/to-tickets/SKILL.md +1 -1
- package/template/.trae/skills/yss-components/SKILL.md +85 -10
- package/template/.trae/skills/yss-design-system/SKILL.md +1 -1
- package/template/.trae/skills/yss-hook/SKILL.md +141 -72
- package/template/.trae/skills/yss-hook/references/frontend-docs.md +3 -2
- package/template/.trae/skills/yss-product-lifecycle/SKILL.md +10 -9
- package/template/.trae/skills/yss-product-lifecycle/references/matt-yss-adapter.md +29 -17
- package/template/.trae/skills/yss-product-lifecycle/references/orchestration-contract.yaml +87 -2
- package/template/.trae/skills/yss-product-lifecycle/references/orchestration.md +6 -6
- package/template/.trae/skills/yss-product-lifecycle/references/state-model.md +1 -1
- package/template/.trae/skills/yss-prototype-stage/SKILL.md +1 -1
- package/template/AGENTS.md +20 -60
- package/template/docs/adr/0001-product-design-prototype-entrypoint.md +2 -2
- package/template/docs/agents/skills-maintenance.md +3 -3
- package/template/docs/design/README.md +1 -1
- package/template/docs/process/MATT-POCOCK-ENGINEERING-SKILLS.md +1 -1
- package/template/docs/process/harness-process-tailoring.md +37 -1
- package/template/docs/process/lifecycle-artifact-map.md +1 -0
- package/template/docs/process/lifecycle-registry-baseline.json +4 -1
- package/template/docs/process/lifecycle-registry.yaml +13 -10
- package/template/docs/process/maintenance-intensity.yaml +25 -0
- package/template/docs/user-guide//344/272/247/345/223/201/347/240/224/345/217/221/345/205/250/347/224/237/345/221/275/345/221/250/346/234/237/346/234/200/344/275/263/345/256/236/350/267/265.md +1 -1
- package/template/scripts/lib/maintenance-intensity.mjs +94 -0
- package/template/scripts/lib/scenario-checks.mjs +149 -1
- package/template/scripts/lib/skill-supply-chain.mjs +13 -2
- package/template/scripts/verify-maintenance-checkpoint +13 -0
- package/template/scripts/verify-maintenance-intensity-scenarios +47 -0
- package/template/scripts/verify-template +3 -2
- package/template/skills-lock.json +27 -120
- package/template/wiki/raw/skills-lock.json +99 -222
- package/template/wiki/wiki/Matt/346/212/200/350/203/275/344/275/223/347/263/273.md +1 -1
- package/template/wiki/wiki/YSS/345/267/245/347/250/213/346/212/200/350/203/275/344/275/223/347/263/273.md +1 -1
- package/template/wiki/wiki//345/244/215/347/233/230/344/270/216/346/235/203/345/250/201/350/265/204/344/272/247/344/277/256/350/256/242.md +1 -1
- package/template/wiki/wiki//346/250/241/346/235/277/345/217/221/345/270/203/351/227/250/347/246/201/344/270/216/351/252/214/350/257/201.md +1 -1
- package/template/wiki/wiki//346/250/241/346/235/277/347/273/264/346/212/244/346/265/201/347/250/213.md +1 -1
- package/template.snapshot.json +4 -4
- package/template/.agents/skills/claude-handoff/SKILL.md +0 -18
- package/template/.agents/skills/claude-handoff/agents/openai.yaml +0 -5
- package/template/.agents/skills/git-guardrails-claude-code/SKILL.md +0 -95
- package/template/.agents/skills/git-guardrails-claude-code/agents/openai.yaml +0 -3
- package/template/.agents/skills/git-guardrails-claude-code/scripts/block-dangerous-git.sh +0 -25
- package/template/.agents/skills/web-design-engineer/README.md +0 -461
- package/template/.agents/skills/web-design-engineer/README.zh-CN.md +0 -461
- package/template/.agents/skills/web-design-engineer/SKILL.md +0 -493
- package/template/.agents/skills/web-design-engineer/manifest.json +0 -15
- package/template/.agents/skills/web-design-engineer/references/advanced-patterns.md +0 -521
- package/template/.agents/skills/web-design-engineer/references/critique-guide.md +0 -226
- package/template/.agents/skills/web-design-engineer/references/design-directions.md +0 -188
- package/template/.agents/skills/web-design-engineer/references/style-recipes/INDEX.md +0 -145
- package/template/.agents/skills/web-design-engineer/references/style-recipes/active-theory.md +0 -49
- package/template/.agents/skills/web-design-engineer/references/style-recipes/aesop.md +0 -52
- package/template/.agents/skills/web-design-engineer/references/style-recipes/apple-hig.md +0 -52
- package/template/.agents/skills/web-design-engineer/references/style-recipes/are-na.md +0 -55
- package/template/.agents/skills/web-design-engineer/references/style-recipes/balenciaga-post-2017.md +0 -52
- package/template/.agents/skills/web-design-engineer/references/style-recipes/bloomberg-businessweek-turley.md +0 -52
- package/template/.agents/skills/web-design-engineer/references/style-recipes/bloomberg-terminal.md +0 -56
- package/template/.agents/skills/web-design-engineer/references/style-recipes/dieter-rams-braun.md +0 -50
- package/template/.agents/skills/web-design-engineer/references/style-recipes/field-io.md +0 -50
- package/template/.agents/skills/web-design-engineer/references/style-recipes/headspace-meditation.md +0 -52
- package/template/.agents/skills/web-design-engineer/references/style-recipes/linear.md +0 -61
- package/template/.agents/skills/web-design-engineer/references/style-recipes/mailchimp-freddie.md +0 -52
- package/template/.agents/skills/web-design-engineer/references/style-recipes/mid-century-modern.md +0 -52
- package/template/.agents/skills/web-design-engineer/references/style-recipes/monocle-magazine.md +0 -53
- package/template/.agents/skills/web-design-engineer/references/style-recipes/muji-kenya-hara.md +0 -52
- package/template/.agents/skills/web-design-engineer/references/style-recipes/notion-pre-ai.md +0 -53
- package/template/.agents/skills/web-design-engineer/references/style-recipes/nyt-the-daily.md +0 -54
- package/template/.agents/skills/web-design-engineer/references/style-recipes/pentagram.md +0 -52
- package/template/.agents/skills/web-design-engineer/references/style-recipes/raycast.md +0 -54
- package/template/.agents/skills/web-design-engineer/references/style-recipes/resn-storytelling.md +0 -49
- package/template/.agents/skills/web-design-engineer/references/style-recipes/stripe-press.md +0 -54
- package/template/.agents/skills/web-design-engineer/references/style-recipes/tufte-dataink.md +0 -52
- package/template/.agents/skills/web-design-engineer/references/style-recipes/vercel-mesh.md +0 -56
- package/template/.agents/skills/web-design-engineer/references/style-recipes/vignelli-swiss-helvetica.md +0 -50
- package/template/.agents/skills/web-design-engineer/references/style-recipes/y2k-retrofuturism.md +0 -54
- package/template/.agents/skills/web-video-presentation/README.md +0 -322
- package/template/.agents/skills/web-video-presentation/README.zh-CN.md +0 -322
- package/template/.agents/skills/web-video-presentation/SKILL.md +0 -451
- package/template/.agents/skills/web-video-presentation/manifest.json +0 -15
- package/template/.agents/skills/web-video-presentation/references/AUDIO.md +0 -276
- package/template/.agents/skills/web-video-presentation/references/CHAPTER-CRAFT.md +0 -224
- package/template/.agents/skills/web-video-presentation/references/EXAMPLES/README.md +0 -107
- package/template/.agents/skills/web-video-presentation/references/EXAMPLES/case-tech-review/README.md +0 -56
- package/template/.agents/skills/web-video-presentation/references/EXAMPLES/case-tech-review/outline-snippet.md +0 -71
- package/template/.agents/skills/web-video-presentation/references/EXAMPLES/hook-chapter/README.md +0 -86
- package/template/.agents/skills/web-video-presentation/references/EXAMPLES/hook-chapter/chapter.css +0 -197
- package/template/.agents/skills/web-video-presentation/references/EXAMPLES/hook-chapter/chapter.tsx +0 -125
- package/template/.agents/skills/web-video-presentation/references/EXAMPLES/list-reveal/README.md +0 -91
- package/template/.agents/skills/web-video-presentation/references/EXAMPLES/list-reveal/chapter.css +0 -137
- package/template/.agents/skills/web-video-presentation/references/EXAMPLES/list-reveal/chapter.tsx +0 -103
- package/template/.agents/skills/web-video-presentation/references/OUTLINE-FORMAT.md +0 -203
- package/template/.agents/skills/web-video-presentation/references/RECORDING.md +0 -77
- package/template/.agents/skills/web-video-presentation/references/SCRIPT-STYLE.md +0 -409
- package/template/.agents/skills/web-video-presentation/references/THEMES.md +0 -351
- package/template/.agents/skills/web-video-presentation/scripts/scaffold.sh +0 -245
- package/template/.agents/skills/web-video-presentation/templates/index.html +0 -12
- package/template/.agents/skills/web-video-presentation/templates/scripts/extract-narrations.ts +0 -137
- package/template/.agents/skills/web-video-presentation/templates/scripts/synthesize-audio.sh +0 -145
- package/template/.agents/skills/web-video-presentation/templates/scripts/tts-providers/README.md +0 -324
- package/template/.agents/skills/web-video-presentation/templates/scripts/tts-providers/minimax.sh +0 -50
- package/template/.agents/skills/web-video-presentation/templates/scripts/tts-providers/openai.sh +0 -70
- package/template/.agents/skills/web-video-presentation/templates/src/App.tsx +0 -73
- package/template/.agents/skills/web-video-presentation/templates/src/chapters/01-example/Example.css +0 -80
- package/template/.agents/skills/web-video-presentation/templates/src/chapters/01-example/Example.tsx +0 -104
- package/template/.agents/skills/web-video-presentation/templates/src/chapters/01-example/narrations.ts +0 -28
- package/template/.agents/skills/web-video-presentation/templates/src/components/AutoStartGate.css +0 -55
- package/template/.agents/skills/web-video-presentation/templates/src/components/AutoStartGate.tsx +0 -36
- package/template/.agents/skills/web-video-presentation/templates/src/components/AutoToggle.css +0 -53
- package/template/.agents/skills/web-video-presentation/templates/src/components/AutoToggle.tsx +0 -36
- package/template/.agents/skills/web-video-presentation/templates/src/components/MaskReveal.tsx +0 -35
- package/template/.agents/skills/web-video-presentation/templates/src/components/ProgressBar.css +0 -122
- package/template/.agents/skills/web-video-presentation/templates/src/components/ProgressBar.tsx +0 -109
- package/template/.agents/skills/web-video-presentation/templates/src/components/Stage.tsx +0 -48
- package/template/.agents/skills/web-video-presentation/templates/src/hooks/useAudioPlayer.ts +0 -112
- package/template/.agents/skills/web-video-presentation/templates/src/hooks/useAutoMode.ts +0 -66
- package/template/.agents/skills/web-video-presentation/templates/src/hooks/useStageScale.ts +0 -28
- package/template/.agents/skills/web-video-presentation/templates/src/hooks/useStepper.ts +0 -174
- package/template/.agents/skills/web-video-presentation/templates/src/main.tsx +0 -9
- package/template/.agents/skills/web-video-presentation/templates/src/registry/chapters.ts +0 -23
- package/template/.agents/skills/web-video-presentation/templates/src/registry/types.ts +0 -25
- package/template/.agents/skills/web-video-presentation/templates/src/styles/animations.css +0 -63
- package/template/.agents/skills/web-video-presentation/templates/src/styles/base.css +0 -415
- package/template/.agents/skills/web-video-presentation/templates/src/styles/fonts.css +0 -20
- package/template/.agents/skills/web-video-presentation/templates/vite.config.ts +0 -10
- package/template/.agents/skills/web-video-presentation/themes/bauhaus-bold/theme.json +0 -27
- package/template/.agents/skills/web-video-presentation/themes/bauhaus-bold/tokens.css +0 -60
- package/template/.agents/skills/web-video-presentation/themes/blueprint/theme.json +0 -28
- package/template/.agents/skills/web-video-presentation/themes/blueprint/tokens.css +0 -65
- package/template/.agents/skills/web-video-presentation/themes/bold-signal/theme.json +0 -28
- package/template/.agents/skills/web-video-presentation/themes/bold-signal/tokens.css +0 -71
- package/template/.agents/skills/web-video-presentation/themes/chalk-garden/theme.json +0 -28
- package/template/.agents/skills/web-video-presentation/themes/chalk-garden/tokens.css +0 -64
- package/template/.agents/skills/web-video-presentation/themes/creative-voltage/theme.json +0 -28
- package/template/.agents/skills/web-video-presentation/themes/creative-voltage/tokens.css +0 -68
- package/template/.agents/skills/web-video-presentation/themes/dark-botanical/theme.json +0 -28
- package/template/.agents/skills/web-video-presentation/themes/dark-botanical/tokens.css +0 -68
- package/template/.agents/skills/web-video-presentation/themes/dune/theme.json +0 -28
- package/template/.agents/skills/web-video-presentation/themes/dune/tokens.css +0 -62
- package/template/.agents/skills/web-video-presentation/themes/electric-studio/theme.json +0 -28
- package/template/.agents/skills/web-video-presentation/themes/electric-studio/tokens.css +0 -68
- package/template/.agents/skills/web-video-presentation/themes/forest-ink/theme.json +0 -28
- package/template/.agents/skills/web-video-presentation/themes/forest-ink/tokens.css +0 -68
- package/template/.agents/skills/web-video-presentation/themes/indigo-porcelain/theme.json +0 -28
- package/template/.agents/skills/web-video-presentation/themes/indigo-porcelain/tokens.css +0 -62
- package/template/.agents/skills/web-video-presentation/themes/kraft-paper/theme.json +0 -28
- package/template/.agents/skills/web-video-presentation/themes/kraft-paper/tokens.css +0 -67
- package/template/.agents/skills/web-video-presentation/themes/midnight-press/theme.json +0 -26
- package/template/.agents/skills/web-video-presentation/themes/midnight-press/tokens.css +0 -56
- package/template/.agents/skills/web-video-presentation/themes/monochrome-print/theme.json +0 -28
- package/template/.agents/skills/web-video-presentation/themes/monochrome-print/tokens.css +0 -60
- package/template/.agents/skills/web-video-presentation/themes/neon-cyber/theme.json +0 -28
- package/template/.agents/skills/web-video-presentation/themes/neon-cyber/tokens.css +0 -75
- package/template/.agents/skills/web-video-presentation/themes/newsroom/theme.json +0 -28
- package/template/.agents/skills/web-video-presentation/themes/newsroom/tokens.css +0 -63
- package/template/.agents/skills/web-video-presentation/themes/paper-press/theme.json +0 -27
- package/template/.agents/skills/web-video-presentation/themes/paper-press/tokens.css +0 -65
- package/template/.agents/skills/web-video-presentation/themes/pastel-dream/theme.json +0 -28
- package/template/.agents/skills/web-video-presentation/themes/pastel-dream/tokens.css +0 -67
- package/template/.agents/skills/web-video-presentation/themes/split-canvas/theme.json +0 -28
- package/template/.agents/skills/web-video-presentation/themes/split-canvas/tokens.css +0 -70
- package/template/.agents/skills/web-video-presentation/themes/sunset-zine/theme.json +0 -28
- package/template/.agents/skills/web-video-presentation/themes/sunset-zine/tokens.css +0 -65
- package/template/.agents/skills/web-video-presentation/themes/swiss-ikb/theme.json +0 -28
- package/template/.agents/skills/web-video-presentation/themes/swiss-ikb/tokens.css +0 -77
- package/template/.agents/skills/web-video-presentation/themes/terminal-green/theme.json +0 -28
- package/template/.agents/skills/web-video-presentation/themes/terminal-green/tokens.css +0 -73
- package/template/.agents/skills/web-video-presentation/themes/vintage-editorial/theme.json +0 -28
- package/template/.agents/skills/web-video-presentation/themes/vintage-editorial/tokens.css +0 -66
- package/template/.agents/skills/web-video-presentation/themes/warm-keynote/theme.json +0 -27
- package/template/.agents/skills/web-video-presentation/themes/warm-keynote/tokens.css +0 -66
- package/template/.agents/skills/wireframe-prototype/SKILL.md +0 -56
- package/template/.agents/skills/wireframe-prototype/agents/openai.yaml +0 -4
- package/template/.agents/skills/wizard/SKILL.md +0 -44
- package/template/.agents/skills/wizard/agents/openai.yaml +0 -3
- package/template/.agents/skills/wizard/template.sh +0 -204
- package/template/.agents/skills/writing-skills/SKILL.md +0 -689
- package/template/.agents/skills/writing-skills/anthropic-best-practices.md +0 -1150
- package/template/.agents/skills/writing-skills/examples/CLAUDE_MD_TESTING.md +0 -189
- package/template/.agents/skills/writing-skills/graphviz-conventions.dot +0 -172
- package/template/.agents/skills/writing-skills/persuasion-principles.md +0 -187
- package/template/.agents/skills/writing-skills/render-graphs.js +0 -168
- package/template/.agents/skills/writing-skills/testing-skills-with-subagents.md +0 -384
- package/template/.claude/skills/claude-handoff/SKILL.md +0 -18
- package/template/.claude/skills/claude-handoff/agents/openai.yaml +0 -5
- package/template/.claude/skills/git-guardrails-claude-code/SKILL.md +0 -95
- package/template/.claude/skills/git-guardrails-claude-code/agents/openai.yaml +0 -3
- package/template/.claude/skills/git-guardrails-claude-code/scripts/block-dangerous-git.sh +0 -25
- package/template/.claude/skills/web-design-engineer/README.md +0 -461
- package/template/.claude/skills/web-design-engineer/README.zh-CN.md +0 -461
- package/template/.claude/skills/web-design-engineer/SKILL.md +0 -493
- package/template/.claude/skills/web-design-engineer/manifest.json +0 -15
- package/template/.claude/skills/web-design-engineer/references/advanced-patterns.md +0 -521
- package/template/.claude/skills/web-design-engineer/references/critique-guide.md +0 -226
- package/template/.claude/skills/web-design-engineer/references/design-directions.md +0 -188
- package/template/.claude/skills/web-design-engineer/references/style-recipes/INDEX.md +0 -145
- package/template/.claude/skills/web-design-engineer/references/style-recipes/active-theory.md +0 -49
- package/template/.claude/skills/web-design-engineer/references/style-recipes/aesop.md +0 -52
- package/template/.claude/skills/web-design-engineer/references/style-recipes/apple-hig.md +0 -52
- package/template/.claude/skills/web-design-engineer/references/style-recipes/are-na.md +0 -55
- package/template/.claude/skills/web-design-engineer/references/style-recipes/balenciaga-post-2017.md +0 -52
- package/template/.claude/skills/web-design-engineer/references/style-recipes/bloomberg-businessweek-turley.md +0 -52
- package/template/.claude/skills/web-design-engineer/references/style-recipes/bloomberg-terminal.md +0 -56
- package/template/.claude/skills/web-design-engineer/references/style-recipes/dieter-rams-braun.md +0 -50
- package/template/.claude/skills/web-design-engineer/references/style-recipes/field-io.md +0 -50
- package/template/.claude/skills/web-design-engineer/references/style-recipes/headspace-meditation.md +0 -52
- package/template/.claude/skills/web-design-engineer/references/style-recipes/linear.md +0 -61
- package/template/.claude/skills/web-design-engineer/references/style-recipes/mailchimp-freddie.md +0 -52
- package/template/.claude/skills/web-design-engineer/references/style-recipes/mid-century-modern.md +0 -52
- package/template/.claude/skills/web-design-engineer/references/style-recipes/monocle-magazine.md +0 -53
- package/template/.claude/skills/web-design-engineer/references/style-recipes/muji-kenya-hara.md +0 -52
- package/template/.claude/skills/web-design-engineer/references/style-recipes/notion-pre-ai.md +0 -53
- package/template/.claude/skills/web-design-engineer/references/style-recipes/nyt-the-daily.md +0 -54
- package/template/.claude/skills/web-design-engineer/references/style-recipes/pentagram.md +0 -52
- package/template/.claude/skills/web-design-engineer/references/style-recipes/raycast.md +0 -54
- package/template/.claude/skills/web-design-engineer/references/style-recipes/resn-storytelling.md +0 -49
- package/template/.claude/skills/web-design-engineer/references/style-recipes/stripe-press.md +0 -54
- package/template/.claude/skills/web-design-engineer/references/style-recipes/tufte-dataink.md +0 -52
- package/template/.claude/skills/web-design-engineer/references/style-recipes/vercel-mesh.md +0 -56
- package/template/.claude/skills/web-design-engineer/references/style-recipes/vignelli-swiss-helvetica.md +0 -50
- package/template/.claude/skills/web-design-engineer/references/style-recipes/y2k-retrofuturism.md +0 -54
- package/template/.claude/skills/web-video-presentation/README.md +0 -322
- package/template/.claude/skills/web-video-presentation/README.zh-CN.md +0 -322
- package/template/.claude/skills/web-video-presentation/SKILL.md +0 -451
- package/template/.claude/skills/web-video-presentation/manifest.json +0 -15
- package/template/.claude/skills/web-video-presentation/references/AUDIO.md +0 -276
- package/template/.claude/skills/web-video-presentation/references/CHAPTER-CRAFT.md +0 -224
- package/template/.claude/skills/web-video-presentation/references/EXAMPLES/README.md +0 -107
- package/template/.claude/skills/web-video-presentation/references/EXAMPLES/case-tech-review/README.md +0 -56
- package/template/.claude/skills/web-video-presentation/references/EXAMPLES/case-tech-review/outline-snippet.md +0 -71
- package/template/.claude/skills/web-video-presentation/references/EXAMPLES/hook-chapter/README.md +0 -86
- package/template/.claude/skills/web-video-presentation/references/EXAMPLES/hook-chapter/chapter.css +0 -197
- package/template/.claude/skills/web-video-presentation/references/EXAMPLES/hook-chapter/chapter.tsx +0 -125
- package/template/.claude/skills/web-video-presentation/references/EXAMPLES/list-reveal/README.md +0 -91
- package/template/.claude/skills/web-video-presentation/references/EXAMPLES/list-reveal/chapter.css +0 -137
- package/template/.claude/skills/web-video-presentation/references/EXAMPLES/list-reveal/chapter.tsx +0 -103
- package/template/.claude/skills/web-video-presentation/references/OUTLINE-FORMAT.md +0 -203
- package/template/.claude/skills/web-video-presentation/references/RECORDING.md +0 -77
- package/template/.claude/skills/web-video-presentation/references/SCRIPT-STYLE.md +0 -409
- package/template/.claude/skills/web-video-presentation/references/THEMES.md +0 -351
- package/template/.claude/skills/web-video-presentation/scripts/scaffold.sh +0 -245
- package/template/.claude/skills/web-video-presentation/templates/index.html +0 -12
- package/template/.claude/skills/web-video-presentation/templates/scripts/extract-narrations.ts +0 -137
- package/template/.claude/skills/web-video-presentation/templates/scripts/synthesize-audio.sh +0 -145
- package/template/.claude/skills/web-video-presentation/templates/scripts/tts-providers/README.md +0 -324
- package/template/.claude/skills/web-video-presentation/templates/scripts/tts-providers/minimax.sh +0 -50
- package/template/.claude/skills/web-video-presentation/templates/scripts/tts-providers/openai.sh +0 -70
- package/template/.claude/skills/web-video-presentation/templates/src/App.tsx +0 -73
- package/template/.claude/skills/web-video-presentation/templates/src/chapters/01-example/Example.css +0 -80
- package/template/.claude/skills/web-video-presentation/templates/src/chapters/01-example/Example.tsx +0 -104
- package/template/.claude/skills/web-video-presentation/templates/src/chapters/01-example/narrations.ts +0 -28
- package/template/.claude/skills/web-video-presentation/templates/src/components/AutoStartGate.css +0 -55
- package/template/.claude/skills/web-video-presentation/templates/src/components/AutoStartGate.tsx +0 -36
- package/template/.claude/skills/web-video-presentation/templates/src/components/AutoToggle.css +0 -53
- package/template/.claude/skills/web-video-presentation/templates/src/components/AutoToggle.tsx +0 -36
- package/template/.claude/skills/web-video-presentation/templates/src/components/MaskReveal.tsx +0 -35
- package/template/.claude/skills/web-video-presentation/templates/src/components/ProgressBar.css +0 -122
- package/template/.claude/skills/web-video-presentation/templates/src/components/ProgressBar.tsx +0 -109
- package/template/.claude/skills/web-video-presentation/templates/src/components/Stage.tsx +0 -48
- package/template/.claude/skills/web-video-presentation/templates/src/hooks/useAudioPlayer.ts +0 -112
- package/template/.claude/skills/web-video-presentation/templates/src/hooks/useAutoMode.ts +0 -66
- package/template/.claude/skills/web-video-presentation/templates/src/hooks/useStageScale.ts +0 -28
- package/template/.claude/skills/web-video-presentation/templates/src/hooks/useStepper.ts +0 -174
- package/template/.claude/skills/web-video-presentation/templates/src/main.tsx +0 -9
- package/template/.claude/skills/web-video-presentation/templates/src/registry/chapters.ts +0 -23
- package/template/.claude/skills/web-video-presentation/templates/src/registry/types.ts +0 -25
- package/template/.claude/skills/web-video-presentation/templates/src/styles/animations.css +0 -63
- package/template/.claude/skills/web-video-presentation/templates/src/styles/base.css +0 -415
- package/template/.claude/skills/web-video-presentation/templates/src/styles/fonts.css +0 -20
- package/template/.claude/skills/web-video-presentation/templates/vite.config.ts +0 -10
- package/template/.claude/skills/web-video-presentation/themes/bauhaus-bold/theme.json +0 -27
- package/template/.claude/skills/web-video-presentation/themes/bauhaus-bold/tokens.css +0 -60
- package/template/.claude/skills/web-video-presentation/themes/blueprint/theme.json +0 -28
- package/template/.claude/skills/web-video-presentation/themes/blueprint/tokens.css +0 -65
- package/template/.claude/skills/web-video-presentation/themes/bold-signal/theme.json +0 -28
- package/template/.claude/skills/web-video-presentation/themes/bold-signal/tokens.css +0 -71
- package/template/.claude/skills/web-video-presentation/themes/chalk-garden/theme.json +0 -28
- package/template/.claude/skills/web-video-presentation/themes/chalk-garden/tokens.css +0 -64
- package/template/.claude/skills/web-video-presentation/themes/creative-voltage/theme.json +0 -28
- package/template/.claude/skills/web-video-presentation/themes/creative-voltage/tokens.css +0 -68
- package/template/.claude/skills/web-video-presentation/themes/dark-botanical/theme.json +0 -28
- package/template/.claude/skills/web-video-presentation/themes/dark-botanical/tokens.css +0 -68
- package/template/.claude/skills/web-video-presentation/themes/dune/theme.json +0 -28
- package/template/.claude/skills/web-video-presentation/themes/dune/tokens.css +0 -62
- package/template/.claude/skills/web-video-presentation/themes/electric-studio/theme.json +0 -28
- package/template/.claude/skills/web-video-presentation/themes/electric-studio/tokens.css +0 -68
- package/template/.claude/skills/web-video-presentation/themes/forest-ink/theme.json +0 -28
- package/template/.claude/skills/web-video-presentation/themes/forest-ink/tokens.css +0 -68
- package/template/.claude/skills/web-video-presentation/themes/indigo-porcelain/theme.json +0 -28
- package/template/.claude/skills/web-video-presentation/themes/indigo-porcelain/tokens.css +0 -62
- package/template/.claude/skills/web-video-presentation/themes/kraft-paper/theme.json +0 -28
- package/template/.claude/skills/web-video-presentation/themes/kraft-paper/tokens.css +0 -67
- package/template/.claude/skills/web-video-presentation/themes/midnight-press/theme.json +0 -26
- package/template/.claude/skills/web-video-presentation/themes/midnight-press/tokens.css +0 -56
- package/template/.claude/skills/web-video-presentation/themes/monochrome-print/theme.json +0 -28
- package/template/.claude/skills/web-video-presentation/themes/monochrome-print/tokens.css +0 -60
- package/template/.claude/skills/web-video-presentation/themes/neon-cyber/theme.json +0 -28
- package/template/.claude/skills/web-video-presentation/themes/neon-cyber/tokens.css +0 -75
- package/template/.claude/skills/web-video-presentation/themes/newsroom/theme.json +0 -28
- package/template/.claude/skills/web-video-presentation/themes/newsroom/tokens.css +0 -63
- package/template/.claude/skills/web-video-presentation/themes/paper-press/theme.json +0 -27
- package/template/.claude/skills/web-video-presentation/themes/paper-press/tokens.css +0 -65
- package/template/.claude/skills/web-video-presentation/themes/pastel-dream/theme.json +0 -28
- package/template/.claude/skills/web-video-presentation/themes/pastel-dream/tokens.css +0 -67
- package/template/.claude/skills/web-video-presentation/themes/split-canvas/theme.json +0 -28
- package/template/.claude/skills/web-video-presentation/themes/split-canvas/tokens.css +0 -70
- package/template/.claude/skills/web-video-presentation/themes/sunset-zine/theme.json +0 -28
- package/template/.claude/skills/web-video-presentation/themes/sunset-zine/tokens.css +0 -65
- package/template/.claude/skills/web-video-presentation/themes/swiss-ikb/theme.json +0 -28
- package/template/.claude/skills/web-video-presentation/themes/swiss-ikb/tokens.css +0 -77
- package/template/.claude/skills/web-video-presentation/themes/terminal-green/theme.json +0 -28
- package/template/.claude/skills/web-video-presentation/themes/terminal-green/tokens.css +0 -73
- package/template/.claude/skills/web-video-presentation/themes/vintage-editorial/theme.json +0 -28
- package/template/.claude/skills/web-video-presentation/themes/vintage-editorial/tokens.css +0 -66
- package/template/.claude/skills/web-video-presentation/themes/warm-keynote/theme.json +0 -27
- package/template/.claude/skills/web-video-presentation/themes/warm-keynote/tokens.css +0 -66
- package/template/.claude/skills/wireframe-prototype/SKILL.md +0 -56
- package/template/.claude/skills/wireframe-prototype/agents/openai.yaml +0 -4
- package/template/.claude/skills/wizard/SKILL.md +0 -44
- package/template/.claude/skills/wizard/agents/openai.yaml +0 -3
- package/template/.claude/skills/wizard/template.sh +0 -204
- package/template/.claude/skills/writing-skills/SKILL.md +0 -689
- package/template/.claude/skills/writing-skills/anthropic-best-practices.md +0 -1150
- package/template/.claude/skills/writing-skills/examples/CLAUDE_MD_TESTING.md +0 -189
- package/template/.claude/skills/writing-skills/graphviz-conventions.dot +0 -172
- package/template/.claude/skills/writing-skills/persuasion-principles.md +0 -187
- package/template/.claude/skills/writing-skills/render-graphs.js +0 -168
- package/template/.claude/skills/writing-skills/testing-skills-with-subagents.md +0 -384
- package/template/.codex/skills/claude-handoff/SKILL.md +0 -18
- package/template/.codex/skills/claude-handoff/agents/openai.yaml +0 -5
- package/template/.codex/skills/git-guardrails-claude-code/SKILL.md +0 -95
- package/template/.codex/skills/git-guardrails-claude-code/agents/openai.yaml +0 -3
- package/template/.codex/skills/git-guardrails-claude-code/scripts/block-dangerous-git.sh +0 -25
- package/template/.codex/skills/web-design-engineer/README.md +0 -461
- package/template/.codex/skills/web-design-engineer/README.zh-CN.md +0 -461
- package/template/.codex/skills/web-design-engineer/SKILL.md +0 -493
- package/template/.codex/skills/web-design-engineer/manifest.json +0 -15
- package/template/.codex/skills/web-design-engineer/references/advanced-patterns.md +0 -521
- package/template/.codex/skills/web-design-engineer/references/critique-guide.md +0 -226
- package/template/.codex/skills/web-design-engineer/references/design-directions.md +0 -188
- package/template/.codex/skills/web-design-engineer/references/style-recipes/INDEX.md +0 -145
- package/template/.codex/skills/web-design-engineer/references/style-recipes/active-theory.md +0 -49
- package/template/.codex/skills/web-design-engineer/references/style-recipes/aesop.md +0 -52
- package/template/.codex/skills/web-design-engineer/references/style-recipes/apple-hig.md +0 -52
- package/template/.codex/skills/web-design-engineer/references/style-recipes/are-na.md +0 -55
- package/template/.codex/skills/web-design-engineer/references/style-recipes/balenciaga-post-2017.md +0 -52
- package/template/.codex/skills/web-design-engineer/references/style-recipes/bloomberg-businessweek-turley.md +0 -52
- package/template/.codex/skills/web-design-engineer/references/style-recipes/bloomberg-terminal.md +0 -56
- package/template/.codex/skills/web-design-engineer/references/style-recipes/dieter-rams-braun.md +0 -50
- package/template/.codex/skills/web-design-engineer/references/style-recipes/field-io.md +0 -50
- package/template/.codex/skills/web-design-engineer/references/style-recipes/headspace-meditation.md +0 -52
- package/template/.codex/skills/web-design-engineer/references/style-recipes/linear.md +0 -61
- package/template/.codex/skills/web-design-engineer/references/style-recipes/mailchimp-freddie.md +0 -52
- package/template/.codex/skills/web-design-engineer/references/style-recipes/mid-century-modern.md +0 -52
- package/template/.codex/skills/web-design-engineer/references/style-recipes/monocle-magazine.md +0 -53
- package/template/.codex/skills/web-design-engineer/references/style-recipes/muji-kenya-hara.md +0 -52
- package/template/.codex/skills/web-design-engineer/references/style-recipes/notion-pre-ai.md +0 -53
- package/template/.codex/skills/web-design-engineer/references/style-recipes/nyt-the-daily.md +0 -54
- package/template/.codex/skills/web-design-engineer/references/style-recipes/pentagram.md +0 -52
- package/template/.codex/skills/web-design-engineer/references/style-recipes/raycast.md +0 -54
- package/template/.codex/skills/web-design-engineer/references/style-recipes/resn-storytelling.md +0 -49
- package/template/.codex/skills/web-design-engineer/references/style-recipes/stripe-press.md +0 -54
- package/template/.codex/skills/web-design-engineer/references/style-recipes/tufte-dataink.md +0 -52
- package/template/.codex/skills/web-design-engineer/references/style-recipes/vercel-mesh.md +0 -56
- package/template/.codex/skills/web-design-engineer/references/style-recipes/vignelli-swiss-helvetica.md +0 -50
- package/template/.codex/skills/web-design-engineer/references/style-recipes/y2k-retrofuturism.md +0 -54
- package/template/.codex/skills/web-video-presentation/README.md +0 -322
- package/template/.codex/skills/web-video-presentation/README.zh-CN.md +0 -322
- package/template/.codex/skills/web-video-presentation/SKILL.md +0 -451
- package/template/.codex/skills/web-video-presentation/manifest.json +0 -15
- package/template/.codex/skills/web-video-presentation/references/AUDIO.md +0 -276
- package/template/.codex/skills/web-video-presentation/references/CHAPTER-CRAFT.md +0 -224
- package/template/.codex/skills/web-video-presentation/references/EXAMPLES/README.md +0 -107
- package/template/.codex/skills/web-video-presentation/references/EXAMPLES/case-tech-review/README.md +0 -56
- package/template/.codex/skills/web-video-presentation/references/EXAMPLES/case-tech-review/outline-snippet.md +0 -71
- package/template/.codex/skills/web-video-presentation/references/EXAMPLES/hook-chapter/README.md +0 -86
- package/template/.codex/skills/web-video-presentation/references/EXAMPLES/hook-chapter/chapter.css +0 -197
- package/template/.codex/skills/web-video-presentation/references/EXAMPLES/hook-chapter/chapter.tsx +0 -125
- package/template/.codex/skills/web-video-presentation/references/EXAMPLES/list-reveal/README.md +0 -91
- package/template/.codex/skills/web-video-presentation/references/EXAMPLES/list-reveal/chapter.css +0 -137
- package/template/.codex/skills/web-video-presentation/references/EXAMPLES/list-reveal/chapter.tsx +0 -103
- package/template/.codex/skills/web-video-presentation/references/OUTLINE-FORMAT.md +0 -203
- package/template/.codex/skills/web-video-presentation/references/RECORDING.md +0 -77
- package/template/.codex/skills/web-video-presentation/references/SCRIPT-STYLE.md +0 -409
- package/template/.codex/skills/web-video-presentation/references/THEMES.md +0 -351
- package/template/.codex/skills/web-video-presentation/scripts/scaffold.sh +0 -245
- package/template/.codex/skills/web-video-presentation/templates/index.html +0 -12
- package/template/.codex/skills/web-video-presentation/templates/scripts/extract-narrations.ts +0 -137
- package/template/.codex/skills/web-video-presentation/templates/scripts/synthesize-audio.sh +0 -145
- package/template/.codex/skills/web-video-presentation/templates/scripts/tts-providers/README.md +0 -324
- package/template/.codex/skills/web-video-presentation/templates/scripts/tts-providers/minimax.sh +0 -50
- package/template/.codex/skills/web-video-presentation/templates/scripts/tts-providers/openai.sh +0 -70
- package/template/.codex/skills/web-video-presentation/templates/src/App.tsx +0 -73
- package/template/.codex/skills/web-video-presentation/templates/src/chapters/01-example/Example.css +0 -80
- package/template/.codex/skills/web-video-presentation/templates/src/chapters/01-example/Example.tsx +0 -104
- package/template/.codex/skills/web-video-presentation/templates/src/chapters/01-example/narrations.ts +0 -28
- package/template/.codex/skills/web-video-presentation/templates/src/components/AutoStartGate.css +0 -55
- package/template/.codex/skills/web-video-presentation/templates/src/components/AutoStartGate.tsx +0 -36
- package/template/.codex/skills/web-video-presentation/templates/src/components/AutoToggle.css +0 -53
- package/template/.codex/skills/web-video-presentation/templates/src/components/AutoToggle.tsx +0 -36
- package/template/.codex/skills/web-video-presentation/templates/src/components/MaskReveal.tsx +0 -35
- package/template/.codex/skills/web-video-presentation/templates/src/components/ProgressBar.css +0 -122
- package/template/.codex/skills/web-video-presentation/templates/src/components/ProgressBar.tsx +0 -109
- package/template/.codex/skills/web-video-presentation/templates/src/components/Stage.tsx +0 -48
- package/template/.codex/skills/web-video-presentation/templates/src/hooks/useAudioPlayer.ts +0 -112
- package/template/.codex/skills/web-video-presentation/templates/src/hooks/useAutoMode.ts +0 -66
- package/template/.codex/skills/web-video-presentation/templates/src/hooks/useStageScale.ts +0 -28
- package/template/.codex/skills/web-video-presentation/templates/src/hooks/useStepper.ts +0 -174
- package/template/.codex/skills/web-video-presentation/templates/src/main.tsx +0 -9
- package/template/.codex/skills/web-video-presentation/templates/src/registry/chapters.ts +0 -23
- package/template/.codex/skills/web-video-presentation/templates/src/registry/types.ts +0 -25
- package/template/.codex/skills/web-video-presentation/templates/src/styles/animations.css +0 -63
- package/template/.codex/skills/web-video-presentation/templates/src/styles/base.css +0 -415
- package/template/.codex/skills/web-video-presentation/templates/src/styles/fonts.css +0 -20
- package/template/.codex/skills/web-video-presentation/templates/vite.config.ts +0 -10
- package/template/.codex/skills/web-video-presentation/themes/bauhaus-bold/theme.json +0 -27
- package/template/.codex/skills/web-video-presentation/themes/bauhaus-bold/tokens.css +0 -60
- package/template/.codex/skills/web-video-presentation/themes/blueprint/theme.json +0 -28
- package/template/.codex/skills/web-video-presentation/themes/blueprint/tokens.css +0 -65
- package/template/.codex/skills/web-video-presentation/themes/bold-signal/theme.json +0 -28
- package/template/.codex/skills/web-video-presentation/themes/bold-signal/tokens.css +0 -71
- package/template/.codex/skills/web-video-presentation/themes/chalk-garden/theme.json +0 -28
- package/template/.codex/skills/web-video-presentation/themes/chalk-garden/tokens.css +0 -64
- package/template/.codex/skills/web-video-presentation/themes/creative-voltage/theme.json +0 -28
- package/template/.codex/skills/web-video-presentation/themes/creative-voltage/tokens.css +0 -68
- package/template/.codex/skills/web-video-presentation/themes/dark-botanical/theme.json +0 -28
- package/template/.codex/skills/web-video-presentation/themes/dark-botanical/tokens.css +0 -68
- package/template/.codex/skills/web-video-presentation/themes/dune/theme.json +0 -28
- package/template/.codex/skills/web-video-presentation/themes/dune/tokens.css +0 -62
- package/template/.codex/skills/web-video-presentation/themes/electric-studio/theme.json +0 -28
- package/template/.codex/skills/web-video-presentation/themes/electric-studio/tokens.css +0 -68
- package/template/.codex/skills/web-video-presentation/themes/forest-ink/theme.json +0 -28
- package/template/.codex/skills/web-video-presentation/themes/forest-ink/tokens.css +0 -68
- package/template/.codex/skills/web-video-presentation/themes/indigo-porcelain/theme.json +0 -28
- package/template/.codex/skills/web-video-presentation/themes/indigo-porcelain/tokens.css +0 -62
- package/template/.codex/skills/web-video-presentation/themes/kraft-paper/theme.json +0 -28
- package/template/.codex/skills/web-video-presentation/themes/kraft-paper/tokens.css +0 -67
- package/template/.codex/skills/web-video-presentation/themes/midnight-press/theme.json +0 -26
- package/template/.codex/skills/web-video-presentation/themes/midnight-press/tokens.css +0 -56
- package/template/.codex/skills/web-video-presentation/themes/monochrome-print/theme.json +0 -28
- package/template/.codex/skills/web-video-presentation/themes/monochrome-print/tokens.css +0 -60
- package/template/.codex/skills/web-video-presentation/themes/neon-cyber/theme.json +0 -28
- package/template/.codex/skills/web-video-presentation/themes/neon-cyber/tokens.css +0 -75
- package/template/.codex/skills/web-video-presentation/themes/newsroom/theme.json +0 -28
- package/template/.codex/skills/web-video-presentation/themes/newsroom/tokens.css +0 -63
- package/template/.codex/skills/web-video-presentation/themes/paper-press/theme.json +0 -27
- package/template/.codex/skills/web-video-presentation/themes/paper-press/tokens.css +0 -65
- package/template/.codex/skills/web-video-presentation/themes/pastel-dream/theme.json +0 -28
- package/template/.codex/skills/web-video-presentation/themes/pastel-dream/tokens.css +0 -67
- package/template/.codex/skills/web-video-presentation/themes/split-canvas/theme.json +0 -28
- package/template/.codex/skills/web-video-presentation/themes/split-canvas/tokens.css +0 -70
- package/template/.codex/skills/web-video-presentation/themes/sunset-zine/theme.json +0 -28
- package/template/.codex/skills/web-video-presentation/themes/sunset-zine/tokens.css +0 -65
- package/template/.codex/skills/web-video-presentation/themes/swiss-ikb/theme.json +0 -28
- package/template/.codex/skills/web-video-presentation/themes/swiss-ikb/tokens.css +0 -77
- package/template/.codex/skills/web-video-presentation/themes/terminal-green/theme.json +0 -28
- package/template/.codex/skills/web-video-presentation/themes/terminal-green/tokens.css +0 -73
- package/template/.codex/skills/web-video-presentation/themes/vintage-editorial/theme.json +0 -28
- package/template/.codex/skills/web-video-presentation/themes/vintage-editorial/tokens.css +0 -66
- package/template/.codex/skills/web-video-presentation/themes/warm-keynote/theme.json +0 -27
- package/template/.codex/skills/web-video-presentation/themes/warm-keynote/tokens.css +0 -66
- package/template/.codex/skills/wireframe-prototype/SKILL.md +0 -56
- package/template/.codex/skills/wireframe-prototype/agents/openai.yaml +0 -4
- package/template/.codex/skills/wizard/SKILL.md +0 -44
- package/template/.codex/skills/wizard/agents/openai.yaml +0 -3
- package/template/.codex/skills/wizard/template.sh +0 -204
- package/template/.codex/skills/writing-skills/SKILL.md +0 -689
- package/template/.codex/skills/writing-skills/anthropic-best-practices.md +0 -1150
- package/template/.codex/skills/writing-skills/examples/CLAUDE_MD_TESTING.md +0 -189
- package/template/.codex/skills/writing-skills/graphviz-conventions.dot +0 -172
- package/template/.codex/skills/writing-skills/persuasion-principles.md +0 -187
- package/template/.codex/skills/writing-skills/render-graphs.js +0 -168
- package/template/.codex/skills/writing-skills/testing-skills-with-subagents.md +0 -384
- package/template/.hermes/skills/claude-handoff/SKILL.md +0 -18
- package/template/.hermes/skills/claude-handoff/agents/openai.yaml +0 -5
- package/template/.hermes/skills/git-guardrails-claude-code/SKILL.md +0 -95
- package/template/.hermes/skills/git-guardrails-claude-code/agents/openai.yaml +0 -3
- package/template/.hermes/skills/git-guardrails-claude-code/scripts/block-dangerous-git.sh +0 -25
- package/template/.hermes/skills/web-design-engineer/README.md +0 -461
- package/template/.hermes/skills/web-design-engineer/README.zh-CN.md +0 -461
- package/template/.hermes/skills/web-design-engineer/SKILL.md +0 -493
- package/template/.hermes/skills/web-design-engineer/manifest.json +0 -15
- package/template/.hermes/skills/web-design-engineer/references/advanced-patterns.md +0 -521
- package/template/.hermes/skills/web-design-engineer/references/critique-guide.md +0 -226
- package/template/.hermes/skills/web-design-engineer/references/design-directions.md +0 -188
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/INDEX.md +0 -145
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/active-theory.md +0 -49
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/aesop.md +0 -52
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/apple-hig.md +0 -52
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/are-na.md +0 -55
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/balenciaga-post-2017.md +0 -52
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/bloomberg-businessweek-turley.md +0 -52
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/bloomberg-terminal.md +0 -56
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/dieter-rams-braun.md +0 -50
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/field-io.md +0 -50
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/headspace-meditation.md +0 -52
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/linear.md +0 -61
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/mailchimp-freddie.md +0 -52
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/mid-century-modern.md +0 -52
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/monocle-magazine.md +0 -53
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/muji-kenya-hara.md +0 -52
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/notion-pre-ai.md +0 -53
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/nyt-the-daily.md +0 -54
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/pentagram.md +0 -52
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/raycast.md +0 -54
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/resn-storytelling.md +0 -49
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/stripe-press.md +0 -54
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/tufte-dataink.md +0 -52
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/vercel-mesh.md +0 -56
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/vignelli-swiss-helvetica.md +0 -50
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/y2k-retrofuturism.md +0 -54
- package/template/.hermes/skills/web-video-presentation/README.md +0 -322
- package/template/.hermes/skills/web-video-presentation/README.zh-CN.md +0 -322
- package/template/.hermes/skills/web-video-presentation/SKILL.md +0 -451
- package/template/.hermes/skills/web-video-presentation/manifest.json +0 -15
- package/template/.hermes/skills/web-video-presentation/references/AUDIO.md +0 -276
- package/template/.hermes/skills/web-video-presentation/references/CHAPTER-CRAFT.md +0 -224
- package/template/.hermes/skills/web-video-presentation/references/EXAMPLES/README.md +0 -107
- package/template/.hermes/skills/web-video-presentation/references/EXAMPLES/case-tech-review/README.md +0 -56
- package/template/.hermes/skills/web-video-presentation/references/EXAMPLES/case-tech-review/outline-snippet.md +0 -71
- package/template/.hermes/skills/web-video-presentation/references/EXAMPLES/hook-chapter/README.md +0 -86
- package/template/.hermes/skills/web-video-presentation/references/EXAMPLES/hook-chapter/chapter.css +0 -197
- package/template/.hermes/skills/web-video-presentation/references/EXAMPLES/hook-chapter/chapter.tsx +0 -125
- package/template/.hermes/skills/web-video-presentation/references/EXAMPLES/list-reveal/README.md +0 -91
- package/template/.hermes/skills/web-video-presentation/references/EXAMPLES/list-reveal/chapter.css +0 -137
- package/template/.hermes/skills/web-video-presentation/references/EXAMPLES/list-reveal/chapter.tsx +0 -103
- package/template/.hermes/skills/web-video-presentation/references/OUTLINE-FORMAT.md +0 -203
- package/template/.hermes/skills/web-video-presentation/references/RECORDING.md +0 -77
- package/template/.hermes/skills/web-video-presentation/references/SCRIPT-STYLE.md +0 -409
- package/template/.hermes/skills/web-video-presentation/references/THEMES.md +0 -351
- package/template/.hermes/skills/web-video-presentation/scripts/scaffold.sh +0 -245
- package/template/.hermes/skills/web-video-presentation/templates/index.html +0 -12
- package/template/.hermes/skills/web-video-presentation/templates/scripts/extract-narrations.ts +0 -137
- package/template/.hermes/skills/web-video-presentation/templates/scripts/synthesize-audio.sh +0 -145
- package/template/.hermes/skills/web-video-presentation/templates/scripts/tts-providers/README.md +0 -324
- package/template/.hermes/skills/web-video-presentation/templates/scripts/tts-providers/minimax.sh +0 -50
- package/template/.hermes/skills/web-video-presentation/templates/scripts/tts-providers/openai.sh +0 -70
- package/template/.hermes/skills/web-video-presentation/templates/src/App.tsx +0 -73
- package/template/.hermes/skills/web-video-presentation/templates/src/chapters/01-example/Example.css +0 -80
- package/template/.hermes/skills/web-video-presentation/templates/src/chapters/01-example/Example.tsx +0 -104
- package/template/.hermes/skills/web-video-presentation/templates/src/chapters/01-example/narrations.ts +0 -28
- package/template/.hermes/skills/web-video-presentation/templates/src/components/AutoStartGate.css +0 -55
- package/template/.hermes/skills/web-video-presentation/templates/src/components/AutoStartGate.tsx +0 -36
- package/template/.hermes/skills/web-video-presentation/templates/src/components/AutoToggle.css +0 -53
- package/template/.hermes/skills/web-video-presentation/templates/src/components/AutoToggle.tsx +0 -36
- package/template/.hermes/skills/web-video-presentation/templates/src/components/MaskReveal.tsx +0 -35
- package/template/.hermes/skills/web-video-presentation/templates/src/components/ProgressBar.css +0 -122
- package/template/.hermes/skills/web-video-presentation/templates/src/components/ProgressBar.tsx +0 -109
- package/template/.hermes/skills/web-video-presentation/templates/src/components/Stage.tsx +0 -48
- package/template/.hermes/skills/web-video-presentation/templates/src/hooks/useAudioPlayer.ts +0 -112
- package/template/.hermes/skills/web-video-presentation/templates/src/hooks/useAutoMode.ts +0 -66
- package/template/.hermes/skills/web-video-presentation/templates/src/hooks/useStageScale.ts +0 -28
- package/template/.hermes/skills/web-video-presentation/templates/src/hooks/useStepper.ts +0 -174
- package/template/.hermes/skills/web-video-presentation/templates/src/main.tsx +0 -9
- package/template/.hermes/skills/web-video-presentation/templates/src/registry/chapters.ts +0 -23
- package/template/.hermes/skills/web-video-presentation/templates/src/registry/types.ts +0 -25
- package/template/.hermes/skills/web-video-presentation/templates/src/styles/animations.css +0 -63
- package/template/.hermes/skills/web-video-presentation/templates/src/styles/base.css +0 -415
- package/template/.hermes/skills/web-video-presentation/templates/src/styles/fonts.css +0 -20
- package/template/.hermes/skills/web-video-presentation/templates/vite.config.ts +0 -10
- package/template/.hermes/skills/web-video-presentation/themes/bauhaus-bold/theme.json +0 -27
- package/template/.hermes/skills/web-video-presentation/themes/bauhaus-bold/tokens.css +0 -60
- package/template/.hermes/skills/web-video-presentation/themes/blueprint/theme.json +0 -28
- package/template/.hermes/skills/web-video-presentation/themes/blueprint/tokens.css +0 -65
- package/template/.hermes/skills/web-video-presentation/themes/bold-signal/theme.json +0 -28
- package/template/.hermes/skills/web-video-presentation/themes/bold-signal/tokens.css +0 -71
- package/template/.hermes/skills/web-video-presentation/themes/chalk-garden/theme.json +0 -28
- package/template/.hermes/skills/web-video-presentation/themes/chalk-garden/tokens.css +0 -64
- package/template/.hermes/skills/web-video-presentation/themes/creative-voltage/theme.json +0 -28
- package/template/.hermes/skills/web-video-presentation/themes/creative-voltage/tokens.css +0 -68
- package/template/.hermes/skills/web-video-presentation/themes/dark-botanical/theme.json +0 -28
- package/template/.hermes/skills/web-video-presentation/themes/dark-botanical/tokens.css +0 -68
- package/template/.hermes/skills/web-video-presentation/themes/dune/theme.json +0 -28
- package/template/.hermes/skills/web-video-presentation/themes/dune/tokens.css +0 -62
- package/template/.hermes/skills/web-video-presentation/themes/electric-studio/theme.json +0 -28
- package/template/.hermes/skills/web-video-presentation/themes/electric-studio/tokens.css +0 -68
- package/template/.hermes/skills/web-video-presentation/themes/forest-ink/theme.json +0 -28
- package/template/.hermes/skills/web-video-presentation/themes/forest-ink/tokens.css +0 -68
- package/template/.hermes/skills/web-video-presentation/themes/indigo-porcelain/theme.json +0 -28
- package/template/.hermes/skills/web-video-presentation/themes/indigo-porcelain/tokens.css +0 -62
- package/template/.hermes/skills/web-video-presentation/themes/kraft-paper/theme.json +0 -28
- package/template/.hermes/skills/web-video-presentation/themes/kraft-paper/tokens.css +0 -67
- package/template/.hermes/skills/web-video-presentation/themes/midnight-press/theme.json +0 -26
- package/template/.hermes/skills/web-video-presentation/themes/midnight-press/tokens.css +0 -56
- package/template/.hermes/skills/web-video-presentation/themes/monochrome-print/theme.json +0 -28
- package/template/.hermes/skills/web-video-presentation/themes/monochrome-print/tokens.css +0 -60
- package/template/.hermes/skills/web-video-presentation/themes/neon-cyber/theme.json +0 -28
- package/template/.hermes/skills/web-video-presentation/themes/neon-cyber/tokens.css +0 -75
- package/template/.hermes/skills/web-video-presentation/themes/newsroom/theme.json +0 -28
- package/template/.hermes/skills/web-video-presentation/themes/newsroom/tokens.css +0 -63
- package/template/.hermes/skills/web-video-presentation/themes/paper-press/theme.json +0 -27
- package/template/.hermes/skills/web-video-presentation/themes/paper-press/tokens.css +0 -65
- package/template/.hermes/skills/web-video-presentation/themes/pastel-dream/theme.json +0 -28
- package/template/.hermes/skills/web-video-presentation/themes/pastel-dream/tokens.css +0 -67
- package/template/.hermes/skills/web-video-presentation/themes/split-canvas/theme.json +0 -28
- package/template/.hermes/skills/web-video-presentation/themes/split-canvas/tokens.css +0 -70
- package/template/.hermes/skills/web-video-presentation/themes/sunset-zine/theme.json +0 -28
- package/template/.hermes/skills/web-video-presentation/themes/sunset-zine/tokens.css +0 -65
- package/template/.hermes/skills/web-video-presentation/themes/swiss-ikb/theme.json +0 -28
- package/template/.hermes/skills/web-video-presentation/themes/swiss-ikb/tokens.css +0 -77
- package/template/.hermes/skills/web-video-presentation/themes/terminal-green/theme.json +0 -28
- package/template/.hermes/skills/web-video-presentation/themes/terminal-green/tokens.css +0 -73
- package/template/.hermes/skills/web-video-presentation/themes/vintage-editorial/theme.json +0 -28
- package/template/.hermes/skills/web-video-presentation/themes/vintage-editorial/tokens.css +0 -66
- package/template/.hermes/skills/web-video-presentation/themes/warm-keynote/theme.json +0 -27
- package/template/.hermes/skills/web-video-presentation/themes/warm-keynote/tokens.css +0 -66
- package/template/.hermes/skills/wireframe-prototype/SKILL.md +0 -56
- package/template/.hermes/skills/wireframe-prototype/agents/openai.yaml +0 -4
- package/template/.hermes/skills/wizard/SKILL.md +0 -44
- package/template/.hermes/skills/wizard/agents/openai.yaml +0 -3
- package/template/.hermes/skills/wizard/template.sh +0 -204
- package/template/.hermes/skills/writing-skills/SKILL.md +0 -689
- package/template/.hermes/skills/writing-skills/anthropic-best-practices.md +0 -1150
- package/template/.hermes/skills/writing-skills/examples/CLAUDE_MD_TESTING.md +0 -189
- package/template/.hermes/skills/writing-skills/graphviz-conventions.dot +0 -172
- package/template/.hermes/skills/writing-skills/persuasion-principles.md +0 -187
- package/template/.hermes/skills/writing-skills/render-graphs.js +0 -168
- package/template/.hermes/skills/writing-skills/testing-skills-with-subagents.md +0 -384
- package/template/.pi/skills/claude-handoff/SKILL.md +0 -18
- package/template/.pi/skills/claude-handoff/agents/openai.yaml +0 -5
- package/template/.pi/skills/git-guardrails-claude-code/SKILL.md +0 -95
- package/template/.pi/skills/git-guardrails-claude-code/agents/openai.yaml +0 -3
- package/template/.pi/skills/git-guardrails-claude-code/scripts/block-dangerous-git.sh +0 -25
- package/template/.pi/skills/web-design-engineer/README.md +0 -461
- package/template/.pi/skills/web-design-engineer/README.zh-CN.md +0 -461
- package/template/.pi/skills/web-design-engineer/SKILL.md +0 -493
- package/template/.pi/skills/web-design-engineer/manifest.json +0 -15
- package/template/.pi/skills/web-design-engineer/references/advanced-patterns.md +0 -521
- package/template/.pi/skills/web-design-engineer/references/critique-guide.md +0 -226
- package/template/.pi/skills/web-design-engineer/references/design-directions.md +0 -188
- package/template/.pi/skills/web-design-engineer/references/style-recipes/INDEX.md +0 -145
- package/template/.pi/skills/web-design-engineer/references/style-recipes/active-theory.md +0 -49
- package/template/.pi/skills/web-design-engineer/references/style-recipes/aesop.md +0 -52
- package/template/.pi/skills/web-design-engineer/references/style-recipes/apple-hig.md +0 -52
- package/template/.pi/skills/web-design-engineer/references/style-recipes/are-na.md +0 -55
- package/template/.pi/skills/web-design-engineer/references/style-recipes/balenciaga-post-2017.md +0 -52
- package/template/.pi/skills/web-design-engineer/references/style-recipes/bloomberg-businessweek-turley.md +0 -52
- package/template/.pi/skills/web-design-engineer/references/style-recipes/bloomberg-terminal.md +0 -56
- package/template/.pi/skills/web-design-engineer/references/style-recipes/dieter-rams-braun.md +0 -50
- package/template/.pi/skills/web-design-engineer/references/style-recipes/field-io.md +0 -50
- package/template/.pi/skills/web-design-engineer/references/style-recipes/headspace-meditation.md +0 -52
- package/template/.pi/skills/web-design-engineer/references/style-recipes/linear.md +0 -61
- package/template/.pi/skills/web-design-engineer/references/style-recipes/mailchimp-freddie.md +0 -52
- package/template/.pi/skills/web-design-engineer/references/style-recipes/mid-century-modern.md +0 -52
- package/template/.pi/skills/web-design-engineer/references/style-recipes/monocle-magazine.md +0 -53
- package/template/.pi/skills/web-design-engineer/references/style-recipes/muji-kenya-hara.md +0 -52
- package/template/.pi/skills/web-design-engineer/references/style-recipes/notion-pre-ai.md +0 -53
- package/template/.pi/skills/web-design-engineer/references/style-recipes/nyt-the-daily.md +0 -54
- package/template/.pi/skills/web-design-engineer/references/style-recipes/pentagram.md +0 -52
- package/template/.pi/skills/web-design-engineer/references/style-recipes/raycast.md +0 -54
- package/template/.pi/skills/web-design-engineer/references/style-recipes/resn-storytelling.md +0 -49
- package/template/.pi/skills/web-design-engineer/references/style-recipes/stripe-press.md +0 -54
- package/template/.pi/skills/web-design-engineer/references/style-recipes/tufte-dataink.md +0 -52
- package/template/.pi/skills/web-design-engineer/references/style-recipes/vercel-mesh.md +0 -56
- package/template/.pi/skills/web-design-engineer/references/style-recipes/vignelli-swiss-helvetica.md +0 -50
- package/template/.pi/skills/web-design-engineer/references/style-recipes/y2k-retrofuturism.md +0 -54
- package/template/.pi/skills/web-video-presentation/README.md +0 -322
- package/template/.pi/skills/web-video-presentation/README.zh-CN.md +0 -322
- package/template/.pi/skills/web-video-presentation/SKILL.md +0 -451
- package/template/.pi/skills/web-video-presentation/manifest.json +0 -15
- package/template/.pi/skills/web-video-presentation/references/AUDIO.md +0 -276
- package/template/.pi/skills/web-video-presentation/references/CHAPTER-CRAFT.md +0 -224
- package/template/.pi/skills/web-video-presentation/references/EXAMPLES/README.md +0 -107
- package/template/.pi/skills/web-video-presentation/references/EXAMPLES/case-tech-review/README.md +0 -56
- package/template/.pi/skills/web-video-presentation/references/EXAMPLES/case-tech-review/outline-snippet.md +0 -71
- package/template/.pi/skills/web-video-presentation/references/EXAMPLES/hook-chapter/README.md +0 -86
- package/template/.pi/skills/web-video-presentation/references/EXAMPLES/hook-chapter/chapter.css +0 -197
- package/template/.pi/skills/web-video-presentation/references/EXAMPLES/hook-chapter/chapter.tsx +0 -125
- package/template/.pi/skills/web-video-presentation/references/EXAMPLES/list-reveal/README.md +0 -91
- package/template/.pi/skills/web-video-presentation/references/EXAMPLES/list-reveal/chapter.css +0 -137
- package/template/.pi/skills/web-video-presentation/references/EXAMPLES/list-reveal/chapter.tsx +0 -103
- package/template/.pi/skills/web-video-presentation/references/OUTLINE-FORMAT.md +0 -203
- package/template/.pi/skills/web-video-presentation/references/RECORDING.md +0 -77
- package/template/.pi/skills/web-video-presentation/references/SCRIPT-STYLE.md +0 -409
- package/template/.pi/skills/web-video-presentation/references/THEMES.md +0 -351
- package/template/.pi/skills/web-video-presentation/scripts/scaffold.sh +0 -245
- package/template/.pi/skills/web-video-presentation/templates/index.html +0 -12
- package/template/.pi/skills/web-video-presentation/templates/scripts/extract-narrations.ts +0 -137
- package/template/.pi/skills/web-video-presentation/templates/scripts/synthesize-audio.sh +0 -145
- package/template/.pi/skills/web-video-presentation/templates/scripts/tts-providers/README.md +0 -324
- package/template/.pi/skills/web-video-presentation/templates/scripts/tts-providers/minimax.sh +0 -50
- package/template/.pi/skills/web-video-presentation/templates/scripts/tts-providers/openai.sh +0 -70
- package/template/.pi/skills/web-video-presentation/templates/src/App.tsx +0 -73
- package/template/.pi/skills/web-video-presentation/templates/src/chapters/01-example/Example.css +0 -80
- package/template/.pi/skills/web-video-presentation/templates/src/chapters/01-example/Example.tsx +0 -104
- package/template/.pi/skills/web-video-presentation/templates/src/chapters/01-example/narrations.ts +0 -28
- package/template/.pi/skills/web-video-presentation/templates/src/components/AutoStartGate.css +0 -55
- package/template/.pi/skills/web-video-presentation/templates/src/components/AutoStartGate.tsx +0 -36
- package/template/.pi/skills/web-video-presentation/templates/src/components/AutoToggle.css +0 -53
- package/template/.pi/skills/web-video-presentation/templates/src/components/AutoToggle.tsx +0 -36
- package/template/.pi/skills/web-video-presentation/templates/src/components/MaskReveal.tsx +0 -35
- package/template/.pi/skills/web-video-presentation/templates/src/components/ProgressBar.css +0 -122
- package/template/.pi/skills/web-video-presentation/templates/src/components/ProgressBar.tsx +0 -109
- package/template/.pi/skills/web-video-presentation/templates/src/components/Stage.tsx +0 -48
- package/template/.pi/skills/web-video-presentation/templates/src/hooks/useAudioPlayer.ts +0 -112
- package/template/.pi/skills/web-video-presentation/templates/src/hooks/useAutoMode.ts +0 -66
- package/template/.pi/skills/web-video-presentation/templates/src/hooks/useStageScale.ts +0 -28
- package/template/.pi/skills/web-video-presentation/templates/src/hooks/useStepper.ts +0 -174
- package/template/.pi/skills/web-video-presentation/templates/src/main.tsx +0 -9
- package/template/.pi/skills/web-video-presentation/templates/src/registry/chapters.ts +0 -23
- package/template/.pi/skills/web-video-presentation/templates/src/registry/types.ts +0 -25
- package/template/.pi/skills/web-video-presentation/templates/src/styles/animations.css +0 -63
- package/template/.pi/skills/web-video-presentation/templates/src/styles/base.css +0 -415
- package/template/.pi/skills/web-video-presentation/templates/src/styles/fonts.css +0 -20
- package/template/.pi/skills/web-video-presentation/templates/vite.config.ts +0 -10
- package/template/.pi/skills/web-video-presentation/themes/bauhaus-bold/theme.json +0 -27
- package/template/.pi/skills/web-video-presentation/themes/bauhaus-bold/tokens.css +0 -60
- package/template/.pi/skills/web-video-presentation/themes/blueprint/theme.json +0 -28
- package/template/.pi/skills/web-video-presentation/themes/blueprint/tokens.css +0 -65
- package/template/.pi/skills/web-video-presentation/themes/bold-signal/theme.json +0 -28
- package/template/.pi/skills/web-video-presentation/themes/bold-signal/tokens.css +0 -71
- package/template/.pi/skills/web-video-presentation/themes/chalk-garden/theme.json +0 -28
- package/template/.pi/skills/web-video-presentation/themes/chalk-garden/tokens.css +0 -64
- package/template/.pi/skills/web-video-presentation/themes/creative-voltage/theme.json +0 -28
- package/template/.pi/skills/web-video-presentation/themes/creative-voltage/tokens.css +0 -68
- package/template/.pi/skills/web-video-presentation/themes/dark-botanical/theme.json +0 -28
- package/template/.pi/skills/web-video-presentation/themes/dark-botanical/tokens.css +0 -68
- package/template/.pi/skills/web-video-presentation/themes/dune/theme.json +0 -28
- package/template/.pi/skills/web-video-presentation/themes/dune/tokens.css +0 -62
- package/template/.pi/skills/web-video-presentation/themes/electric-studio/theme.json +0 -28
- package/template/.pi/skills/web-video-presentation/themes/electric-studio/tokens.css +0 -68
- package/template/.pi/skills/web-video-presentation/themes/forest-ink/theme.json +0 -28
- package/template/.pi/skills/web-video-presentation/themes/forest-ink/tokens.css +0 -68
- package/template/.pi/skills/web-video-presentation/themes/indigo-porcelain/theme.json +0 -28
- package/template/.pi/skills/web-video-presentation/themes/indigo-porcelain/tokens.css +0 -62
- package/template/.pi/skills/web-video-presentation/themes/kraft-paper/theme.json +0 -28
- package/template/.pi/skills/web-video-presentation/themes/kraft-paper/tokens.css +0 -67
- package/template/.pi/skills/web-video-presentation/themes/midnight-press/theme.json +0 -26
- package/template/.pi/skills/web-video-presentation/themes/midnight-press/tokens.css +0 -56
- package/template/.pi/skills/web-video-presentation/themes/monochrome-print/theme.json +0 -28
- package/template/.pi/skills/web-video-presentation/themes/monochrome-print/tokens.css +0 -60
- package/template/.pi/skills/web-video-presentation/themes/neon-cyber/theme.json +0 -28
- package/template/.pi/skills/web-video-presentation/themes/neon-cyber/tokens.css +0 -75
- package/template/.pi/skills/web-video-presentation/themes/newsroom/theme.json +0 -28
- package/template/.pi/skills/web-video-presentation/themes/newsroom/tokens.css +0 -63
- package/template/.pi/skills/web-video-presentation/themes/paper-press/theme.json +0 -27
- package/template/.pi/skills/web-video-presentation/themes/paper-press/tokens.css +0 -65
- package/template/.pi/skills/web-video-presentation/themes/pastel-dream/theme.json +0 -28
- package/template/.pi/skills/web-video-presentation/themes/pastel-dream/tokens.css +0 -67
- package/template/.pi/skills/web-video-presentation/themes/split-canvas/theme.json +0 -28
- package/template/.pi/skills/web-video-presentation/themes/split-canvas/tokens.css +0 -70
- package/template/.pi/skills/web-video-presentation/themes/sunset-zine/theme.json +0 -28
- package/template/.pi/skills/web-video-presentation/themes/sunset-zine/tokens.css +0 -65
- package/template/.pi/skills/web-video-presentation/themes/swiss-ikb/theme.json +0 -28
- package/template/.pi/skills/web-video-presentation/themes/swiss-ikb/tokens.css +0 -77
- package/template/.pi/skills/web-video-presentation/themes/terminal-green/theme.json +0 -28
- package/template/.pi/skills/web-video-presentation/themes/terminal-green/tokens.css +0 -73
- package/template/.pi/skills/web-video-presentation/themes/vintage-editorial/theme.json +0 -28
- package/template/.pi/skills/web-video-presentation/themes/vintage-editorial/tokens.css +0 -66
- package/template/.pi/skills/web-video-presentation/themes/warm-keynote/theme.json +0 -27
- package/template/.pi/skills/web-video-presentation/themes/warm-keynote/tokens.css +0 -66
- package/template/.pi/skills/wireframe-prototype/SKILL.md +0 -56
- package/template/.pi/skills/wireframe-prototype/agents/openai.yaml +0 -4
- package/template/.pi/skills/wizard/SKILL.md +0 -44
- package/template/.pi/skills/wizard/agents/openai.yaml +0 -3
- package/template/.pi/skills/wizard/template.sh +0 -204
- package/template/.pi/skills/writing-skills/SKILL.md +0 -689
- package/template/.pi/skills/writing-skills/anthropic-best-practices.md +0 -1150
- package/template/.pi/skills/writing-skills/examples/CLAUDE_MD_TESTING.md +0 -189
- package/template/.pi/skills/writing-skills/graphviz-conventions.dot +0 -172
- package/template/.pi/skills/writing-skills/persuasion-principles.md +0 -187
- package/template/.pi/skills/writing-skills/render-graphs.js +0 -168
- package/template/.pi/skills/writing-skills/testing-skills-with-subagents.md +0 -384
- package/template/.qoder/skills/claude-handoff/SKILL.md +0 -18
- package/template/.qoder/skills/claude-handoff/agents/openai.yaml +0 -5
- package/template/.qoder/skills/git-guardrails-claude-code/SKILL.md +0 -95
- package/template/.qoder/skills/git-guardrails-claude-code/agents/openai.yaml +0 -3
- package/template/.qoder/skills/git-guardrails-claude-code/scripts/block-dangerous-git.sh +0 -25
- package/template/.qoder/skills/web-design-engineer/README.md +0 -461
- package/template/.qoder/skills/web-design-engineer/README.zh-CN.md +0 -461
- package/template/.qoder/skills/web-design-engineer/SKILL.md +0 -493
- package/template/.qoder/skills/web-design-engineer/manifest.json +0 -15
- package/template/.qoder/skills/web-design-engineer/references/advanced-patterns.md +0 -521
- package/template/.qoder/skills/web-design-engineer/references/critique-guide.md +0 -226
- package/template/.qoder/skills/web-design-engineer/references/design-directions.md +0 -188
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/INDEX.md +0 -145
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/active-theory.md +0 -49
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/aesop.md +0 -52
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/apple-hig.md +0 -52
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/are-na.md +0 -55
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/balenciaga-post-2017.md +0 -52
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/bloomberg-businessweek-turley.md +0 -52
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/bloomberg-terminal.md +0 -56
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/dieter-rams-braun.md +0 -50
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/field-io.md +0 -50
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/headspace-meditation.md +0 -52
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/linear.md +0 -61
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/mailchimp-freddie.md +0 -52
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/mid-century-modern.md +0 -52
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/monocle-magazine.md +0 -53
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/muji-kenya-hara.md +0 -52
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/notion-pre-ai.md +0 -53
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/nyt-the-daily.md +0 -54
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/pentagram.md +0 -52
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/raycast.md +0 -54
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/resn-storytelling.md +0 -49
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/stripe-press.md +0 -54
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/tufte-dataink.md +0 -52
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/vercel-mesh.md +0 -56
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/vignelli-swiss-helvetica.md +0 -50
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/y2k-retrofuturism.md +0 -54
- package/template/.qoder/skills/web-video-presentation/README.md +0 -322
- package/template/.qoder/skills/web-video-presentation/README.zh-CN.md +0 -322
- package/template/.qoder/skills/web-video-presentation/SKILL.md +0 -451
- package/template/.qoder/skills/web-video-presentation/manifest.json +0 -15
- package/template/.qoder/skills/web-video-presentation/references/AUDIO.md +0 -276
- package/template/.qoder/skills/web-video-presentation/references/CHAPTER-CRAFT.md +0 -224
- package/template/.qoder/skills/web-video-presentation/references/EXAMPLES/README.md +0 -107
- package/template/.qoder/skills/web-video-presentation/references/EXAMPLES/case-tech-review/README.md +0 -56
- package/template/.qoder/skills/web-video-presentation/references/EXAMPLES/case-tech-review/outline-snippet.md +0 -71
- package/template/.qoder/skills/web-video-presentation/references/EXAMPLES/hook-chapter/README.md +0 -86
- package/template/.qoder/skills/web-video-presentation/references/EXAMPLES/hook-chapter/chapter.css +0 -197
- package/template/.qoder/skills/web-video-presentation/references/EXAMPLES/hook-chapter/chapter.tsx +0 -125
- package/template/.qoder/skills/web-video-presentation/references/EXAMPLES/list-reveal/README.md +0 -91
- package/template/.qoder/skills/web-video-presentation/references/EXAMPLES/list-reveal/chapter.css +0 -137
- package/template/.qoder/skills/web-video-presentation/references/EXAMPLES/list-reveal/chapter.tsx +0 -103
- package/template/.qoder/skills/web-video-presentation/references/OUTLINE-FORMAT.md +0 -203
- package/template/.qoder/skills/web-video-presentation/references/RECORDING.md +0 -77
- package/template/.qoder/skills/web-video-presentation/references/SCRIPT-STYLE.md +0 -409
- package/template/.qoder/skills/web-video-presentation/references/THEMES.md +0 -351
- package/template/.qoder/skills/web-video-presentation/scripts/scaffold.sh +0 -245
- package/template/.qoder/skills/web-video-presentation/templates/index.html +0 -12
- package/template/.qoder/skills/web-video-presentation/templates/scripts/extract-narrations.ts +0 -137
- package/template/.qoder/skills/web-video-presentation/templates/scripts/synthesize-audio.sh +0 -145
- package/template/.qoder/skills/web-video-presentation/templates/scripts/tts-providers/README.md +0 -324
- package/template/.qoder/skills/web-video-presentation/templates/scripts/tts-providers/minimax.sh +0 -50
- package/template/.qoder/skills/web-video-presentation/templates/scripts/tts-providers/openai.sh +0 -70
- package/template/.qoder/skills/web-video-presentation/templates/src/App.tsx +0 -73
- package/template/.qoder/skills/web-video-presentation/templates/src/chapters/01-example/Example.css +0 -80
- package/template/.qoder/skills/web-video-presentation/templates/src/chapters/01-example/Example.tsx +0 -104
- package/template/.qoder/skills/web-video-presentation/templates/src/chapters/01-example/narrations.ts +0 -28
- package/template/.qoder/skills/web-video-presentation/templates/src/components/AutoStartGate.css +0 -55
- package/template/.qoder/skills/web-video-presentation/templates/src/components/AutoStartGate.tsx +0 -36
- package/template/.qoder/skills/web-video-presentation/templates/src/components/AutoToggle.css +0 -53
- package/template/.qoder/skills/web-video-presentation/templates/src/components/AutoToggle.tsx +0 -36
- package/template/.qoder/skills/web-video-presentation/templates/src/components/MaskReveal.tsx +0 -35
- package/template/.qoder/skills/web-video-presentation/templates/src/components/ProgressBar.css +0 -122
- package/template/.qoder/skills/web-video-presentation/templates/src/components/ProgressBar.tsx +0 -109
- package/template/.qoder/skills/web-video-presentation/templates/src/components/Stage.tsx +0 -48
- package/template/.qoder/skills/web-video-presentation/templates/src/hooks/useAudioPlayer.ts +0 -112
- package/template/.qoder/skills/web-video-presentation/templates/src/hooks/useAutoMode.ts +0 -66
- package/template/.qoder/skills/web-video-presentation/templates/src/hooks/useStageScale.ts +0 -28
- package/template/.qoder/skills/web-video-presentation/templates/src/hooks/useStepper.ts +0 -174
- package/template/.qoder/skills/web-video-presentation/templates/src/main.tsx +0 -9
- package/template/.qoder/skills/web-video-presentation/templates/src/registry/chapters.ts +0 -23
- package/template/.qoder/skills/web-video-presentation/templates/src/registry/types.ts +0 -25
- package/template/.qoder/skills/web-video-presentation/templates/src/styles/animations.css +0 -63
- package/template/.qoder/skills/web-video-presentation/templates/src/styles/base.css +0 -415
- package/template/.qoder/skills/web-video-presentation/templates/src/styles/fonts.css +0 -20
- package/template/.qoder/skills/web-video-presentation/templates/vite.config.ts +0 -10
- package/template/.qoder/skills/web-video-presentation/themes/bauhaus-bold/theme.json +0 -27
- package/template/.qoder/skills/web-video-presentation/themes/bauhaus-bold/tokens.css +0 -60
- package/template/.qoder/skills/web-video-presentation/themes/blueprint/theme.json +0 -28
- package/template/.qoder/skills/web-video-presentation/themes/blueprint/tokens.css +0 -65
- package/template/.qoder/skills/web-video-presentation/themes/bold-signal/theme.json +0 -28
- package/template/.qoder/skills/web-video-presentation/themes/bold-signal/tokens.css +0 -71
- package/template/.qoder/skills/web-video-presentation/themes/chalk-garden/theme.json +0 -28
- package/template/.qoder/skills/web-video-presentation/themes/chalk-garden/tokens.css +0 -64
- package/template/.qoder/skills/web-video-presentation/themes/creative-voltage/theme.json +0 -28
- package/template/.qoder/skills/web-video-presentation/themes/creative-voltage/tokens.css +0 -68
- package/template/.qoder/skills/web-video-presentation/themes/dark-botanical/theme.json +0 -28
- package/template/.qoder/skills/web-video-presentation/themes/dark-botanical/tokens.css +0 -68
- package/template/.qoder/skills/web-video-presentation/themes/dune/theme.json +0 -28
- package/template/.qoder/skills/web-video-presentation/themes/dune/tokens.css +0 -62
- package/template/.qoder/skills/web-video-presentation/themes/electric-studio/theme.json +0 -28
- package/template/.qoder/skills/web-video-presentation/themes/electric-studio/tokens.css +0 -68
- package/template/.qoder/skills/web-video-presentation/themes/forest-ink/theme.json +0 -28
- package/template/.qoder/skills/web-video-presentation/themes/forest-ink/tokens.css +0 -68
- package/template/.qoder/skills/web-video-presentation/themes/indigo-porcelain/theme.json +0 -28
- package/template/.qoder/skills/web-video-presentation/themes/indigo-porcelain/tokens.css +0 -62
- package/template/.qoder/skills/web-video-presentation/themes/kraft-paper/theme.json +0 -28
- package/template/.qoder/skills/web-video-presentation/themes/kraft-paper/tokens.css +0 -67
- package/template/.qoder/skills/web-video-presentation/themes/midnight-press/theme.json +0 -26
- package/template/.qoder/skills/web-video-presentation/themes/midnight-press/tokens.css +0 -56
- package/template/.qoder/skills/web-video-presentation/themes/monochrome-print/theme.json +0 -28
- package/template/.qoder/skills/web-video-presentation/themes/monochrome-print/tokens.css +0 -60
- package/template/.qoder/skills/web-video-presentation/themes/neon-cyber/theme.json +0 -28
- package/template/.qoder/skills/web-video-presentation/themes/neon-cyber/tokens.css +0 -75
- package/template/.qoder/skills/web-video-presentation/themes/newsroom/theme.json +0 -28
- package/template/.qoder/skills/web-video-presentation/themes/newsroom/tokens.css +0 -63
- package/template/.qoder/skills/web-video-presentation/themes/paper-press/theme.json +0 -27
- package/template/.qoder/skills/web-video-presentation/themes/paper-press/tokens.css +0 -65
- package/template/.qoder/skills/web-video-presentation/themes/pastel-dream/theme.json +0 -28
- package/template/.qoder/skills/web-video-presentation/themes/pastel-dream/tokens.css +0 -67
- package/template/.qoder/skills/web-video-presentation/themes/split-canvas/theme.json +0 -28
- package/template/.qoder/skills/web-video-presentation/themes/split-canvas/tokens.css +0 -70
- package/template/.qoder/skills/web-video-presentation/themes/sunset-zine/theme.json +0 -28
- package/template/.qoder/skills/web-video-presentation/themes/sunset-zine/tokens.css +0 -65
- package/template/.qoder/skills/web-video-presentation/themes/swiss-ikb/theme.json +0 -28
- package/template/.qoder/skills/web-video-presentation/themes/swiss-ikb/tokens.css +0 -77
- package/template/.qoder/skills/web-video-presentation/themes/terminal-green/theme.json +0 -28
- package/template/.qoder/skills/web-video-presentation/themes/terminal-green/tokens.css +0 -73
- package/template/.qoder/skills/web-video-presentation/themes/vintage-editorial/theme.json +0 -28
- package/template/.qoder/skills/web-video-presentation/themes/vintage-editorial/tokens.css +0 -66
- package/template/.qoder/skills/web-video-presentation/themes/warm-keynote/theme.json +0 -27
- package/template/.qoder/skills/web-video-presentation/themes/warm-keynote/tokens.css +0 -66
- package/template/.qoder/skills/wireframe-prototype/SKILL.md +0 -56
- package/template/.qoder/skills/wireframe-prototype/agents/openai.yaml +0 -4
- package/template/.qoder/skills/wizard/SKILL.md +0 -44
- package/template/.qoder/skills/wizard/agents/openai.yaml +0 -3
- package/template/.qoder/skills/wizard/template.sh +0 -204
- package/template/.qoder/skills/writing-skills/SKILL.md +0 -689
- package/template/.qoder/skills/writing-skills/anthropic-best-practices.md +0 -1150
- package/template/.qoder/skills/writing-skills/examples/CLAUDE_MD_TESTING.md +0 -189
- package/template/.qoder/skills/writing-skills/graphviz-conventions.dot +0 -172
- package/template/.qoder/skills/writing-skills/persuasion-principles.md +0 -187
- package/template/.qoder/skills/writing-skills/render-graphs.js +0 -168
- package/template/.qoder/skills/writing-skills/testing-skills-with-subagents.md +0 -384
- package/template/.trae/skills/claude-handoff/SKILL.md +0 -18
- package/template/.trae/skills/claude-handoff/agents/openai.yaml +0 -5
- package/template/.trae/skills/git-guardrails-claude-code/SKILL.md +0 -95
- package/template/.trae/skills/git-guardrails-claude-code/agents/openai.yaml +0 -3
- package/template/.trae/skills/git-guardrails-claude-code/scripts/block-dangerous-git.sh +0 -25
- package/template/.trae/skills/web-design-engineer/README.md +0 -461
- package/template/.trae/skills/web-design-engineer/README.zh-CN.md +0 -461
- package/template/.trae/skills/web-design-engineer/SKILL.md +0 -493
- package/template/.trae/skills/web-design-engineer/manifest.json +0 -15
- package/template/.trae/skills/web-design-engineer/references/advanced-patterns.md +0 -521
- package/template/.trae/skills/web-design-engineer/references/critique-guide.md +0 -226
- package/template/.trae/skills/web-design-engineer/references/design-directions.md +0 -188
- package/template/.trae/skills/web-design-engineer/references/style-recipes/INDEX.md +0 -145
- package/template/.trae/skills/web-design-engineer/references/style-recipes/active-theory.md +0 -49
- package/template/.trae/skills/web-design-engineer/references/style-recipes/aesop.md +0 -52
- package/template/.trae/skills/web-design-engineer/references/style-recipes/apple-hig.md +0 -52
- package/template/.trae/skills/web-design-engineer/references/style-recipes/are-na.md +0 -55
- package/template/.trae/skills/web-design-engineer/references/style-recipes/balenciaga-post-2017.md +0 -52
- package/template/.trae/skills/web-design-engineer/references/style-recipes/bloomberg-businessweek-turley.md +0 -52
- package/template/.trae/skills/web-design-engineer/references/style-recipes/bloomberg-terminal.md +0 -56
- package/template/.trae/skills/web-design-engineer/references/style-recipes/dieter-rams-braun.md +0 -50
- package/template/.trae/skills/web-design-engineer/references/style-recipes/field-io.md +0 -50
- package/template/.trae/skills/web-design-engineer/references/style-recipes/headspace-meditation.md +0 -52
- package/template/.trae/skills/web-design-engineer/references/style-recipes/linear.md +0 -61
- package/template/.trae/skills/web-design-engineer/references/style-recipes/mailchimp-freddie.md +0 -52
- package/template/.trae/skills/web-design-engineer/references/style-recipes/mid-century-modern.md +0 -52
- package/template/.trae/skills/web-design-engineer/references/style-recipes/monocle-magazine.md +0 -53
- package/template/.trae/skills/web-design-engineer/references/style-recipes/muji-kenya-hara.md +0 -52
- package/template/.trae/skills/web-design-engineer/references/style-recipes/notion-pre-ai.md +0 -53
- package/template/.trae/skills/web-design-engineer/references/style-recipes/nyt-the-daily.md +0 -54
- package/template/.trae/skills/web-design-engineer/references/style-recipes/pentagram.md +0 -52
- package/template/.trae/skills/web-design-engineer/references/style-recipes/raycast.md +0 -54
- package/template/.trae/skills/web-design-engineer/references/style-recipes/resn-storytelling.md +0 -49
- package/template/.trae/skills/web-design-engineer/references/style-recipes/stripe-press.md +0 -54
- package/template/.trae/skills/web-design-engineer/references/style-recipes/tufte-dataink.md +0 -52
- package/template/.trae/skills/web-design-engineer/references/style-recipes/vercel-mesh.md +0 -56
- package/template/.trae/skills/web-design-engineer/references/style-recipes/vignelli-swiss-helvetica.md +0 -50
- package/template/.trae/skills/web-design-engineer/references/style-recipes/y2k-retrofuturism.md +0 -54
- package/template/.trae/skills/web-video-presentation/README.md +0 -322
- package/template/.trae/skills/web-video-presentation/README.zh-CN.md +0 -322
- package/template/.trae/skills/web-video-presentation/SKILL.md +0 -451
- package/template/.trae/skills/web-video-presentation/manifest.json +0 -15
- package/template/.trae/skills/web-video-presentation/references/AUDIO.md +0 -276
- package/template/.trae/skills/web-video-presentation/references/CHAPTER-CRAFT.md +0 -224
- package/template/.trae/skills/web-video-presentation/references/EXAMPLES/README.md +0 -107
- package/template/.trae/skills/web-video-presentation/references/EXAMPLES/case-tech-review/README.md +0 -56
- package/template/.trae/skills/web-video-presentation/references/EXAMPLES/case-tech-review/outline-snippet.md +0 -71
- package/template/.trae/skills/web-video-presentation/references/EXAMPLES/hook-chapter/README.md +0 -86
- package/template/.trae/skills/web-video-presentation/references/EXAMPLES/hook-chapter/chapter.css +0 -197
- package/template/.trae/skills/web-video-presentation/references/EXAMPLES/hook-chapter/chapter.tsx +0 -125
- package/template/.trae/skills/web-video-presentation/references/EXAMPLES/list-reveal/README.md +0 -91
- package/template/.trae/skills/web-video-presentation/references/EXAMPLES/list-reveal/chapter.css +0 -137
- package/template/.trae/skills/web-video-presentation/references/EXAMPLES/list-reveal/chapter.tsx +0 -103
- package/template/.trae/skills/web-video-presentation/references/OUTLINE-FORMAT.md +0 -203
- package/template/.trae/skills/web-video-presentation/references/RECORDING.md +0 -77
- package/template/.trae/skills/web-video-presentation/references/SCRIPT-STYLE.md +0 -409
- package/template/.trae/skills/web-video-presentation/references/THEMES.md +0 -351
- package/template/.trae/skills/web-video-presentation/scripts/scaffold.sh +0 -245
- package/template/.trae/skills/web-video-presentation/templates/index.html +0 -12
- package/template/.trae/skills/web-video-presentation/templates/scripts/extract-narrations.ts +0 -137
- package/template/.trae/skills/web-video-presentation/templates/scripts/synthesize-audio.sh +0 -145
- package/template/.trae/skills/web-video-presentation/templates/scripts/tts-providers/README.md +0 -324
- package/template/.trae/skills/web-video-presentation/templates/scripts/tts-providers/minimax.sh +0 -50
- package/template/.trae/skills/web-video-presentation/templates/scripts/tts-providers/openai.sh +0 -70
- package/template/.trae/skills/web-video-presentation/templates/src/App.tsx +0 -73
- package/template/.trae/skills/web-video-presentation/templates/src/chapters/01-example/Example.css +0 -80
- package/template/.trae/skills/web-video-presentation/templates/src/chapters/01-example/Example.tsx +0 -104
- package/template/.trae/skills/web-video-presentation/templates/src/chapters/01-example/narrations.ts +0 -28
- package/template/.trae/skills/web-video-presentation/templates/src/components/AutoStartGate.css +0 -55
- package/template/.trae/skills/web-video-presentation/templates/src/components/AutoStartGate.tsx +0 -36
- package/template/.trae/skills/web-video-presentation/templates/src/components/AutoToggle.css +0 -53
- package/template/.trae/skills/web-video-presentation/templates/src/components/AutoToggle.tsx +0 -36
- package/template/.trae/skills/web-video-presentation/templates/src/components/MaskReveal.tsx +0 -35
- package/template/.trae/skills/web-video-presentation/templates/src/components/ProgressBar.css +0 -122
- package/template/.trae/skills/web-video-presentation/templates/src/components/ProgressBar.tsx +0 -109
- package/template/.trae/skills/web-video-presentation/templates/src/components/Stage.tsx +0 -48
- package/template/.trae/skills/web-video-presentation/templates/src/hooks/useAudioPlayer.ts +0 -112
- package/template/.trae/skills/web-video-presentation/templates/src/hooks/useAutoMode.ts +0 -66
- package/template/.trae/skills/web-video-presentation/templates/src/hooks/useStageScale.ts +0 -28
- package/template/.trae/skills/web-video-presentation/templates/src/hooks/useStepper.ts +0 -174
- package/template/.trae/skills/web-video-presentation/templates/src/main.tsx +0 -9
- package/template/.trae/skills/web-video-presentation/templates/src/registry/chapters.ts +0 -23
- package/template/.trae/skills/web-video-presentation/templates/src/registry/types.ts +0 -25
- package/template/.trae/skills/web-video-presentation/templates/src/styles/animations.css +0 -63
- package/template/.trae/skills/web-video-presentation/templates/src/styles/base.css +0 -415
- package/template/.trae/skills/web-video-presentation/templates/src/styles/fonts.css +0 -20
- package/template/.trae/skills/web-video-presentation/templates/vite.config.ts +0 -10
- package/template/.trae/skills/web-video-presentation/themes/bauhaus-bold/theme.json +0 -27
- package/template/.trae/skills/web-video-presentation/themes/bauhaus-bold/tokens.css +0 -60
- package/template/.trae/skills/web-video-presentation/themes/blueprint/theme.json +0 -28
- package/template/.trae/skills/web-video-presentation/themes/blueprint/tokens.css +0 -65
- package/template/.trae/skills/web-video-presentation/themes/bold-signal/theme.json +0 -28
- package/template/.trae/skills/web-video-presentation/themes/bold-signal/tokens.css +0 -71
- package/template/.trae/skills/web-video-presentation/themes/chalk-garden/theme.json +0 -28
- package/template/.trae/skills/web-video-presentation/themes/chalk-garden/tokens.css +0 -64
- package/template/.trae/skills/web-video-presentation/themes/creative-voltage/theme.json +0 -28
- package/template/.trae/skills/web-video-presentation/themes/creative-voltage/tokens.css +0 -68
- package/template/.trae/skills/web-video-presentation/themes/dark-botanical/theme.json +0 -28
- package/template/.trae/skills/web-video-presentation/themes/dark-botanical/tokens.css +0 -68
- package/template/.trae/skills/web-video-presentation/themes/dune/theme.json +0 -28
- package/template/.trae/skills/web-video-presentation/themes/dune/tokens.css +0 -62
- package/template/.trae/skills/web-video-presentation/themes/electric-studio/theme.json +0 -28
- package/template/.trae/skills/web-video-presentation/themes/electric-studio/tokens.css +0 -68
- package/template/.trae/skills/web-video-presentation/themes/forest-ink/theme.json +0 -28
- package/template/.trae/skills/web-video-presentation/themes/forest-ink/tokens.css +0 -68
- package/template/.trae/skills/web-video-presentation/themes/indigo-porcelain/theme.json +0 -28
- package/template/.trae/skills/web-video-presentation/themes/indigo-porcelain/tokens.css +0 -62
- package/template/.trae/skills/web-video-presentation/themes/kraft-paper/theme.json +0 -28
- package/template/.trae/skills/web-video-presentation/themes/kraft-paper/tokens.css +0 -67
- package/template/.trae/skills/web-video-presentation/themes/midnight-press/theme.json +0 -26
- package/template/.trae/skills/web-video-presentation/themes/midnight-press/tokens.css +0 -56
- package/template/.trae/skills/web-video-presentation/themes/monochrome-print/theme.json +0 -28
- package/template/.trae/skills/web-video-presentation/themes/monochrome-print/tokens.css +0 -60
- package/template/.trae/skills/web-video-presentation/themes/neon-cyber/theme.json +0 -28
- package/template/.trae/skills/web-video-presentation/themes/neon-cyber/tokens.css +0 -75
- package/template/.trae/skills/web-video-presentation/themes/newsroom/theme.json +0 -28
- package/template/.trae/skills/web-video-presentation/themes/newsroom/tokens.css +0 -63
- package/template/.trae/skills/web-video-presentation/themes/paper-press/theme.json +0 -27
- package/template/.trae/skills/web-video-presentation/themes/paper-press/tokens.css +0 -65
- package/template/.trae/skills/web-video-presentation/themes/pastel-dream/theme.json +0 -28
- package/template/.trae/skills/web-video-presentation/themes/pastel-dream/tokens.css +0 -67
- package/template/.trae/skills/web-video-presentation/themes/split-canvas/theme.json +0 -28
- package/template/.trae/skills/web-video-presentation/themes/split-canvas/tokens.css +0 -70
- package/template/.trae/skills/web-video-presentation/themes/sunset-zine/theme.json +0 -28
- package/template/.trae/skills/web-video-presentation/themes/sunset-zine/tokens.css +0 -65
- package/template/.trae/skills/web-video-presentation/themes/swiss-ikb/theme.json +0 -28
- package/template/.trae/skills/web-video-presentation/themes/swiss-ikb/tokens.css +0 -77
- package/template/.trae/skills/web-video-presentation/themes/terminal-green/theme.json +0 -28
- package/template/.trae/skills/web-video-presentation/themes/terminal-green/tokens.css +0 -73
- package/template/.trae/skills/web-video-presentation/themes/vintage-editorial/theme.json +0 -28
- package/template/.trae/skills/web-video-presentation/themes/vintage-editorial/tokens.css +0 -66
- package/template/.trae/skills/web-video-presentation/themes/warm-keynote/theme.json +0 -27
- package/template/.trae/skills/web-video-presentation/themes/warm-keynote/tokens.css +0 -66
- package/template/.trae/skills/wireframe-prototype/SKILL.md +0 -56
- package/template/.trae/skills/wireframe-prototype/agents/openai.yaml +0 -4
- package/template/.trae/skills/wizard/SKILL.md +0 -44
- package/template/.trae/skills/wizard/agents/openai.yaml +0 -3
- package/template/.trae/skills/wizard/template.sh +0 -204
- package/template/.trae/skills/writing-skills/SKILL.md +0 -689
- package/template/.trae/skills/writing-skills/anthropic-best-practices.md +0 -1150
- package/template/.trae/skills/writing-skills/examples/CLAUDE_MD_TESTING.md +0 -189
- package/template/.trae/skills/writing-skills/graphviz-conventions.dot +0 -172
- package/template/.trae/skills/writing-skills/persuasion-principles.md +0 -187
- package/template/.trae/skills/writing-skills/render-graphs.js +0 -168
- package/template/.trae/skills/writing-skills/testing-skills-with-subagents.md +0 -384
package/template/.claude/skills/web-video-presentation/templates/src/components/ProgressBar.tsx
DELETED
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
import { useEffect, useRef } from "react";
|
|
2
|
-
import type { ChapterDef } from "../registry/types";
|
|
3
|
-
import "./ProgressBar.css";
|
|
4
|
-
|
|
5
|
-
interface Props {
|
|
6
|
-
chapters: ChapterDef[];
|
|
7
|
-
cursor: { chapter: number; step: number };
|
|
8
|
-
onJumpChapter(idx: number, step?: number): void;
|
|
9
|
-
/**
|
|
10
|
-
* Optional GitHub link rendered next to the bar; reveals/hides together
|
|
11
|
-
* with the chapter list on hover. Pass `null` to hide.
|
|
12
|
-
*/
|
|
13
|
-
githubUrl?: string | null;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
const DEFAULT_GITHUB_URL =
|
|
17
|
-
"https://github.com/ConardLi/garden-skills";
|
|
18
|
-
|
|
19
|
-
/**
|
|
20
|
-
* Hidden-on-hover progress bar, fixed to the bottom of the viewport.
|
|
21
|
-
* Click chapter pill or pip to jump.
|
|
22
|
-
*
|
|
23
|
-
* Width is content-adaptive and capped at `100vw - 32px`; if total chapters
|
|
24
|
-
* (or an active chapter's step pips) overflow, the bar scrolls horizontally
|
|
25
|
-
* instead of squeezing items. The active chapter is auto-scrolled into view
|
|
26
|
-
* on chapter change so it's visible the moment hover reveals the bar.
|
|
27
|
-
*
|
|
28
|
-
* A GitHub link sits to the right of the viewport, sharing the same hover
|
|
29
|
-
* trigger so it appears/disappears in sync with the bar.
|
|
30
|
-
*/
|
|
31
|
-
export function ProgressBar({
|
|
32
|
-
chapters,
|
|
33
|
-
cursor,
|
|
34
|
-
onJumpChapter,
|
|
35
|
-
githubUrl = DEFAULT_GITHUB_URL,
|
|
36
|
-
}: Props) {
|
|
37
|
-
const activeRef = useRef<HTMLButtonElement | null>(null);
|
|
38
|
-
|
|
39
|
-
useEffect(() => {
|
|
40
|
-
activeRef.current?.scrollIntoView({
|
|
41
|
-
behavior: "smooth",
|
|
42
|
-
block: "nearest",
|
|
43
|
-
inline: "center",
|
|
44
|
-
});
|
|
45
|
-
}, [cursor.chapter]);
|
|
46
|
-
|
|
47
|
-
return (
|
|
48
|
-
<div className="pb-hover" data-no-advance>
|
|
49
|
-
<div className="pb">
|
|
50
|
-
{chapters.map((c, i) => {
|
|
51
|
-
const isActive = i === cursor.chapter;
|
|
52
|
-
return (
|
|
53
|
-
<button
|
|
54
|
-
key={c.id}
|
|
55
|
-
ref={isActive ? activeRef : undefined}
|
|
56
|
-
className={`pb-chapter ${isActive ? "pb-active" : ""}`}
|
|
57
|
-
onClick={(e) => {
|
|
58
|
-
e.stopPropagation();
|
|
59
|
-
onJumpChapter(i, 0);
|
|
60
|
-
}}
|
|
61
|
-
>
|
|
62
|
-
<span className="pb-num">{String(i + 1).padStart(2, "0")}</span>
|
|
63
|
-
<span className="pb-title">{c.title}</span>
|
|
64
|
-
{isActive && (
|
|
65
|
-
<div className="pb-pips">
|
|
66
|
-
{Array.from({ length: c.narrations.length }, (_, s) => (
|
|
67
|
-
<span
|
|
68
|
-
key={s}
|
|
69
|
-
className={`pb-pip ${
|
|
70
|
-
s <= cursor.step ? "pb-pip-on" : ""
|
|
71
|
-
}`}
|
|
72
|
-
onClick={(e) => {
|
|
73
|
-
e.stopPropagation();
|
|
74
|
-
onJumpChapter(i, s);
|
|
75
|
-
}}
|
|
76
|
-
/>
|
|
77
|
-
))}
|
|
78
|
-
</div>
|
|
79
|
-
)}
|
|
80
|
-
</button>
|
|
81
|
-
);
|
|
82
|
-
})}
|
|
83
|
-
</div>
|
|
84
|
-
{githubUrl && (
|
|
85
|
-
<a
|
|
86
|
-
className="pb-github"
|
|
87
|
-
href={githubUrl}
|
|
88
|
-
target="_blank"
|
|
89
|
-
rel="noopener noreferrer"
|
|
90
|
-
aria-label="View source on GitHub"
|
|
91
|
-
onClick={(e) => e.stopPropagation()}
|
|
92
|
-
>
|
|
93
|
-
<svg
|
|
94
|
-
viewBox="0 0 24 24"
|
|
95
|
-
width="20"
|
|
96
|
-
height="20"
|
|
97
|
-
aria-hidden="true"
|
|
98
|
-
focusable="false"
|
|
99
|
-
>
|
|
100
|
-
<path
|
|
101
|
-
fill="currentColor"
|
|
102
|
-
d="M12 .5C5.65.5.5 5.65.5 12.02c0 5.08 3.29 9.39 7.86 10.91.58.11.79-.25.79-.56 0-.27-.01-1-.02-1.96-3.2.7-3.87-1.54-3.87-1.54-.52-1.33-1.28-1.69-1.28-1.69-1.04-.71.08-.7.08-.7 1.16.08 1.77 1.19 1.77 1.19 1.03 1.76 2.7 1.25 3.36.96.1-.75.4-1.25.73-1.54-2.55-.29-5.24-1.28-5.24-5.69 0-1.26.45-2.29 1.18-3.1-.12-.29-.51-1.46.11-3.04 0 0 .97-.31 3.18 1.18a11 11 0 0 1 5.79 0c2.2-1.49 3.17-1.18 3.17-1.18.63 1.58.23 2.75.12 3.04.74.81 1.18 1.84 1.18 3.1 0 4.42-2.69 5.39-5.25 5.68.41.36.78 1.06.78 2.13 0 1.54-.01 2.78-.01 3.16 0 .31.21.68.8.56 4.56-1.52 7.85-5.83 7.85-10.91C23.5 5.65 18.35.5 12 .5Z"
|
|
103
|
-
/>
|
|
104
|
-
</svg>
|
|
105
|
-
</a>
|
|
106
|
-
)}
|
|
107
|
-
</div>
|
|
108
|
-
);
|
|
109
|
-
}
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import type { CSSProperties, ReactNode } from "react";
|
|
2
|
-
import { useStageScale } from "../hooks/useStageScale";
|
|
3
|
-
|
|
4
|
-
interface Props {
|
|
5
|
-
onAdvance(): void;
|
|
6
|
-
children: ReactNode;
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* The 16:9 stage. Click anywhere except interactive children = advance.
|
|
11
|
-
*
|
|
12
|
-
* Layout structure (3 nested elements):
|
|
13
|
-
* .app-shell ← full viewport, flex-centers the fitter
|
|
14
|
-
* .stage-fitter ← sized to ACTUAL VISIBLE px (1920*scale × 1080*scale)
|
|
15
|
-
* so the layout system honestly sees what's on screen
|
|
16
|
-
* and centers it bulletproof on every viewport / DPR.
|
|
17
|
-
* .stage-frame ← raw 1920×1080 box, scaled from top-left into the fitter.
|
|
18
|
-
*
|
|
19
|
-
* Surface colors come from the active theme's CSS custom properties
|
|
20
|
-
* (var(--shell), var(--surface)) — see themes/<id>/tokens.css.
|
|
21
|
-
*/
|
|
22
|
-
export function Stage({ onAdvance, children }: Props) {
|
|
23
|
-
const scale = useStageScale();
|
|
24
|
-
const fitterStyle: CSSProperties = {
|
|
25
|
-
width: 1920 * scale,
|
|
26
|
-
height: 1080 * scale,
|
|
27
|
-
};
|
|
28
|
-
const frameStyle: CSSProperties = {
|
|
29
|
-
transform: `scale(${scale})`,
|
|
30
|
-
};
|
|
31
|
-
return (
|
|
32
|
-
<div className="app-shell">
|
|
33
|
-
<div className="stage-fitter" style={fitterStyle}>
|
|
34
|
-
<div
|
|
35
|
-
className="stage-frame"
|
|
36
|
-
style={frameStyle}
|
|
37
|
-
onClick={(e) => {
|
|
38
|
-
const t = e.target as HTMLElement;
|
|
39
|
-
if (t.closest("button, a, input, [data-no-advance]")) return;
|
|
40
|
-
onAdvance();
|
|
41
|
-
}}
|
|
42
|
-
>
|
|
43
|
-
{children}
|
|
44
|
-
</div>
|
|
45
|
-
</div>
|
|
46
|
-
</div>
|
|
47
|
-
);
|
|
48
|
-
}
|
package/template/.claude/skills/web-video-presentation/templates/src/hooks/useAudioPlayer.ts
DELETED
|
@@ -1,112 +0,0 @@
|
|
|
1
|
-
import { useEffect, useRef } from "react";
|
|
2
|
-
|
|
3
|
-
export type PlaybackMode = "manual" | "audio" | "auto";
|
|
4
|
-
|
|
5
|
-
interface Options {
|
|
6
|
-
/** Audio file path. `null` = no audio for this step (silent). */
|
|
7
|
-
src: string | null;
|
|
8
|
-
/** `manual` = no playback. `audio` = play but don't auto-advance.
|
|
9
|
-
* `auto` = play and auto-advance when finished. */
|
|
10
|
-
mode: PlaybackMode;
|
|
11
|
-
/** Small breathing pad (ms) after audio finishes before advancing,
|
|
12
|
-
* in `auto` mode. Default 200ms. Set to 0 if mp3 already has trailing
|
|
13
|
-
* silence. */
|
|
14
|
-
trailMs?: number;
|
|
15
|
-
/** Fallback duration (ms) for `auto` mode when the audio file is missing
|
|
16
|
-
* or fails to play. Typically computed from text length. */
|
|
17
|
-
estimateFallbackMs?: number;
|
|
18
|
-
/** Called when `auto` mode determines the step is finished. */
|
|
19
|
-
onAutoAdvance: () => void;
|
|
20
|
-
/** Has the user started auto playback? (Browsers block autoplay until
|
|
21
|
-
* the page receives a user gesture; the AutoStartGate flips this.) */
|
|
22
|
-
autoStarted: boolean;
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
/**
|
|
26
|
-
* Per-step audio playback for the presentation.
|
|
27
|
-
*
|
|
28
|
-
* Manages a single hidden `<audio>` element. Switches `src` whenever the
|
|
29
|
-
* current step changes.
|
|
30
|
-
*
|
|
31
|
-
* In `auto` mode:
|
|
32
|
-
* • Audio file present → advance `trailMs` after the audio's `ended` event.
|
|
33
|
-
* • Audio file missing / blocked / src = null → advance after
|
|
34
|
-
* `estimateFallbackMs` (so previews and silent steps still work).
|
|
35
|
-
*
|
|
36
|
-
* Audio playback is the sole driver of step duration — there is intentionally
|
|
37
|
-
* no "minimum hold" knob. If a chapter's visual animation needs more time,
|
|
38
|
-
* the chapter should write longer narration, split the step, or speed the
|
|
39
|
-
* animation up. This keeps Auto-mode behavior trivially predictable.
|
|
40
|
-
*/
|
|
41
|
-
export function useAudioPlayer({
|
|
42
|
-
src,
|
|
43
|
-
mode,
|
|
44
|
-
trailMs = 200,
|
|
45
|
-
estimateFallbackMs = 1500,
|
|
46
|
-
onAutoAdvance,
|
|
47
|
-
autoStarted,
|
|
48
|
-
}: Options) {
|
|
49
|
-
const audioRef = useRef<HTMLAudioElement | null>(null);
|
|
50
|
-
// Latest callback ref so timers don't capture stale closures.
|
|
51
|
-
const onAdvanceRef = useRef(onAutoAdvance);
|
|
52
|
-
onAdvanceRef.current = onAutoAdvance;
|
|
53
|
-
|
|
54
|
-
useEffect(() => {
|
|
55
|
-
const prev = audioRef.current;
|
|
56
|
-
if (prev) {
|
|
57
|
-
prev.pause();
|
|
58
|
-
prev.removeAttribute("src");
|
|
59
|
-
prev.load();
|
|
60
|
-
audioRef.current = null;
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
if (mode === "manual") return;
|
|
64
|
-
if (mode === "auto" && !autoStarted) return;
|
|
65
|
-
|
|
66
|
-
let advanced = false;
|
|
67
|
-
let timer: number | null = null;
|
|
68
|
-
|
|
69
|
-
const advanceAfter = (ms: number) => {
|
|
70
|
-
if (mode !== "auto" || advanced) return;
|
|
71
|
-
timer = window.setTimeout(() => {
|
|
72
|
-
if (advanced) return;
|
|
73
|
-
advanced = true;
|
|
74
|
-
onAdvanceRef.current();
|
|
75
|
-
}, Math.max(0, ms));
|
|
76
|
-
};
|
|
77
|
-
|
|
78
|
-
if (src) {
|
|
79
|
-
const audio = new Audio(src);
|
|
80
|
-
audioRef.current = audio;
|
|
81
|
-
audio.preload = "auto";
|
|
82
|
-
|
|
83
|
-
audio.addEventListener("ended", () => advanceAfter(trailMs));
|
|
84
|
-
audio.addEventListener("error", () => {
|
|
85
|
-
// Audio file missing or undecodable — fall back to estimate.
|
|
86
|
-
if (mode === "auto") advanceAfter(estimateFallbackMs);
|
|
87
|
-
});
|
|
88
|
-
|
|
89
|
-
audio.play().catch((err) => {
|
|
90
|
-
// Autoplay blocked (rare, AutoStartGate should prevent this) or
|
|
91
|
-
// file missing — fall back to estimate in auto mode.
|
|
92
|
-
console.warn("audio play failed:", err);
|
|
93
|
-
if (mode === "auto") advanceAfter(estimateFallbackMs);
|
|
94
|
-
});
|
|
95
|
-
} else if (mode === "auto") {
|
|
96
|
-
// No audio for this step (silent / empty narration) — use estimate.
|
|
97
|
-
advanceAfter(estimateFallbackMs);
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
return () => {
|
|
101
|
-
advanced = true;
|
|
102
|
-
if (timer != null) clearTimeout(timer);
|
|
103
|
-
const a = audioRef.current;
|
|
104
|
-
if (a) {
|
|
105
|
-
a.pause();
|
|
106
|
-
a.removeAttribute("src");
|
|
107
|
-
a.load();
|
|
108
|
-
audioRef.current = null;
|
|
109
|
-
}
|
|
110
|
-
};
|
|
111
|
-
}, [src, mode, trailMs, estimateFallbackMs, autoStarted]);
|
|
112
|
-
}
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
import { useCallback, useEffect, useState } from "react";
|
|
2
|
-
import type { PlaybackMode } from "./useAudioPlayer";
|
|
3
|
-
|
|
4
|
-
const ORDER: PlaybackMode[] = ["manual", "audio", "auto"];
|
|
5
|
-
|
|
6
|
-
function readModeFromURL(): PlaybackMode {
|
|
7
|
-
if (typeof window === "undefined") return "manual";
|
|
8
|
-
const q = new URLSearchParams(window.location.search);
|
|
9
|
-
if (q.get("auto") === "1") return "auto";
|
|
10
|
-
if (q.get("audio") === "1") return "audio";
|
|
11
|
-
return "manual";
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
/**
|
|
15
|
-
* Playback mode state machine + URL sync + keyboard toggle.
|
|
16
|
-
*
|
|
17
|
-
* Modes:
|
|
18
|
-
* • `manual` — silent, you click / arrow-key to advance
|
|
19
|
-
* • `audio` — audio plays per step, but you still click to advance
|
|
20
|
-
* • `auto` — audio plays AND advances automatically (full recording mode)
|
|
21
|
-
*
|
|
22
|
-
* Initial mode is read from URL: `?auto=1` or `?audio=1`. Press `M` to
|
|
23
|
-
* cycle: manual → audio → auto → manual. URL stays in sync so reload
|
|
24
|
-
* preserves the mode.
|
|
25
|
-
*
|
|
26
|
-
* `autoStarted` exists separately because browsers require a user gesture
|
|
27
|
-
* before audio can autoplay — `AutoStartGate` flips it on space-press.
|
|
28
|
-
*/
|
|
29
|
-
export function useAutoMode() {
|
|
30
|
-
const [mode, setModeState] = useState<PlaybackMode>(() => readModeFromURL());
|
|
31
|
-
const [autoStarted, setAutoStarted] = useState(false);
|
|
32
|
-
|
|
33
|
-
const setMode = useCallback((m: PlaybackMode) => {
|
|
34
|
-
setModeState(m);
|
|
35
|
-
if (typeof window === "undefined") return;
|
|
36
|
-
const url = new URL(window.location.href);
|
|
37
|
-
url.searchParams.delete("audio");
|
|
38
|
-
url.searchParams.delete("auto");
|
|
39
|
-
if (m === "audio") url.searchParams.set("audio", "1");
|
|
40
|
-
if (m === "auto") url.searchParams.set("auto", "1");
|
|
41
|
-
window.history.replaceState(null, "", url.toString());
|
|
42
|
-
if (m !== "auto") setAutoStarted(false);
|
|
43
|
-
}, []);
|
|
44
|
-
|
|
45
|
-
const cycleMode = useCallback(() => {
|
|
46
|
-
setMode(ORDER[(ORDER.indexOf(mode) + 1) % ORDER.length]!);
|
|
47
|
-
}, [mode, setMode]);
|
|
48
|
-
|
|
49
|
-
// Keyboard: `M` cycles mode. `Space` starts auto if gated.
|
|
50
|
-
useEffect(() => {
|
|
51
|
-
const onKey = (e: KeyboardEvent) => {
|
|
52
|
-
if (e.target instanceof HTMLInputElement) return;
|
|
53
|
-
if (e.key === "m" || e.key === "M") {
|
|
54
|
-
e.preventDefault();
|
|
55
|
-
cycleMode();
|
|
56
|
-
} else if (e.key === " " && mode === "auto" && !autoStarted) {
|
|
57
|
-
e.preventDefault();
|
|
58
|
-
setAutoStarted(true);
|
|
59
|
-
}
|
|
60
|
-
};
|
|
61
|
-
window.addEventListener("keydown", onKey);
|
|
62
|
-
return () => window.removeEventListener("keydown", onKey);
|
|
63
|
-
}, [mode, autoStarted, cycleMode]);
|
|
64
|
-
|
|
65
|
-
return { mode, setMode, cycleMode, autoStarted, setAutoStarted };
|
|
66
|
-
}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { useEffect, useState } from "react";
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Compute the scale needed to fit a 1920x1080 stage inside the current
|
|
5
|
-
* viewport, leaving `marginX` / `marginY` of breathing room around it
|
|
6
|
-
* (so absolutely-positioned UI like the progress bar isn't cropped).
|
|
7
|
-
*/
|
|
8
|
-
export function useStageScale(
|
|
9
|
-
baseW = 1920,
|
|
10
|
-
baseH = 1080,
|
|
11
|
-
marginX = 80,
|
|
12
|
-
marginY = 100,
|
|
13
|
-
) {
|
|
14
|
-
const [scale, setScale] = useState(1);
|
|
15
|
-
|
|
16
|
-
useEffect(() => {
|
|
17
|
-
function update() {
|
|
18
|
-
const usefulW = Math.max(320, window.innerWidth - marginX * 2);
|
|
19
|
-
const usefulH = Math.max(180, window.innerHeight - marginY * 2);
|
|
20
|
-
setScale(Math.min(usefulW / baseW, usefulH / baseH));
|
|
21
|
-
}
|
|
22
|
-
update();
|
|
23
|
-
window.addEventListener("resize", update);
|
|
24
|
-
return () => window.removeEventListener("resize", update);
|
|
25
|
-
}, [baseW, baseH, marginX, marginY]);
|
|
26
|
-
|
|
27
|
-
return scale;
|
|
28
|
-
}
|
|
@@ -1,174 +0,0 @@
|
|
|
1
|
-
import { useCallback, useEffect, useMemo, useState } from "react";
|
|
2
|
-
import type { ChapterDef } from "../registry/types";
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* Bump this when chapter step counts / structure change so old persisted
|
|
6
|
-
* cursors don't land mid-removed-step.
|
|
7
|
-
*/
|
|
8
|
-
const STORAGE_KEY = "presentation-cursor-v4";
|
|
9
|
-
|
|
10
|
-
export type Cursor = { chapter: number; step: number };
|
|
11
|
-
|
|
12
|
-
export interface StepperState {
|
|
13
|
-
cursor: Cursor;
|
|
14
|
-
totalChapters: number;
|
|
15
|
-
chapterTotalSteps: number;
|
|
16
|
-
globalIndex: number;
|
|
17
|
-
totalGlobal: number;
|
|
18
|
-
next(): void;
|
|
19
|
-
prev(): void;
|
|
20
|
-
jumpToChapter(idx: number, step?: number): void;
|
|
21
|
-
jumpToGlobal(globalIdx: number): void;
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
const clamp = (n: number, lo: number, hi: number) =>
|
|
25
|
-
Math.max(lo, Math.min(hi, n));
|
|
26
|
-
|
|
27
|
-
/**
|
|
28
|
-
* Clamp a (possibly stale) cursor to the current chapter list. Persisted
|
|
29
|
-
* cursors can outlive structural changes — fewer chapters, fewer steps,
|
|
30
|
-
* a different scaffolded project sharing the same dev-server origin — so
|
|
31
|
-
* we always re-validate before handing one to React.
|
|
32
|
-
*/
|
|
33
|
-
function sanitize(cursor: Cursor, chapters: ChapterDef[]): Cursor {
|
|
34
|
-
if (chapters.length === 0) return { chapter: 0, step: 0 };
|
|
35
|
-
const chapter = clamp(cursor.chapter | 0, 0, chapters.length - 1);
|
|
36
|
-
const stepCount = chapters[chapter]!.narrations.length;
|
|
37
|
-
const step = clamp(cursor.step | 0, 0, Math.max(0, stepCount - 1));
|
|
38
|
-
return { chapter, step };
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
export function useStepper(chapters: ChapterDef[]): StepperState {
|
|
42
|
-
const [cursor, setCursor] = useState<Cursor>(() => {
|
|
43
|
-
const fallback = { chapter: 0, step: 0 };
|
|
44
|
-
if (typeof window === "undefined") return fallback;
|
|
45
|
-
try {
|
|
46
|
-
const raw = window.localStorage.getItem(STORAGE_KEY);
|
|
47
|
-
if (raw) return sanitize(JSON.parse(raw), chapters);
|
|
48
|
-
} catch {
|
|
49
|
-
/* ignore */
|
|
50
|
-
}
|
|
51
|
-
return fallback;
|
|
52
|
-
});
|
|
53
|
-
|
|
54
|
-
// Re-sanitize if the chapter list shape changes after mount (e.g. HMR
|
|
55
|
-
// updates `chapters.ts`) — keeps a stale persisted cursor from leaking
|
|
56
|
-
// into a render where it's now out of range.
|
|
57
|
-
useEffect(() => {
|
|
58
|
-
setCursor((cur) => {
|
|
59
|
-
const next = sanitize(cur, chapters);
|
|
60
|
-
return next.chapter === cur.chapter && next.step === cur.step
|
|
61
|
-
? cur
|
|
62
|
-
: next;
|
|
63
|
-
});
|
|
64
|
-
}, [chapters]);
|
|
65
|
-
|
|
66
|
-
useEffect(() => {
|
|
67
|
-
try {
|
|
68
|
-
window.localStorage.setItem(STORAGE_KEY, JSON.stringify(cursor));
|
|
69
|
-
} catch {
|
|
70
|
-
/* ignore */
|
|
71
|
-
}
|
|
72
|
-
}, [cursor]);
|
|
73
|
-
|
|
74
|
-
const offsets = useMemo(() => {
|
|
75
|
-
const arr: number[] = [];
|
|
76
|
-
let acc = 0;
|
|
77
|
-
for (const c of chapters) {
|
|
78
|
-
arr.push(acc);
|
|
79
|
-
acc += c.narrations.length;
|
|
80
|
-
}
|
|
81
|
-
return arr;
|
|
82
|
-
}, [chapters]);
|
|
83
|
-
const totalGlobal = useMemo(
|
|
84
|
-
() => chapters.reduce((s, c) => s + c.narrations.length, 0),
|
|
85
|
-
[chapters],
|
|
86
|
-
);
|
|
87
|
-
const globalIndex = (offsets[cursor.chapter] ?? 0) + cursor.step;
|
|
88
|
-
|
|
89
|
-
const next = useCallback(() => {
|
|
90
|
-
setCursor((cur) => {
|
|
91
|
-
const c = chapters[cur.chapter]!;
|
|
92
|
-
if (cur.step < c.narrations.length - 1)
|
|
93
|
-
return { ...cur, step: cur.step + 1 };
|
|
94
|
-
if (cur.chapter < chapters.length - 1)
|
|
95
|
-
return { chapter: cur.chapter + 1, step: 0 };
|
|
96
|
-
return cur;
|
|
97
|
-
});
|
|
98
|
-
}, [chapters]);
|
|
99
|
-
|
|
100
|
-
const prev = useCallback(() => {
|
|
101
|
-
setCursor((cur) => {
|
|
102
|
-
if (cur.step > 0) return { ...cur, step: cur.step - 1 };
|
|
103
|
-
if (cur.chapter > 0) {
|
|
104
|
-
const p = chapters[cur.chapter - 1]!;
|
|
105
|
-
return { chapter: cur.chapter - 1, step: p.narrations.length - 1 };
|
|
106
|
-
}
|
|
107
|
-
return cur;
|
|
108
|
-
});
|
|
109
|
-
}, [chapters]);
|
|
110
|
-
|
|
111
|
-
const jumpToChapter = useCallback(
|
|
112
|
-
(idx: number, step = 0) => {
|
|
113
|
-
const ch = clamp(idx, 0, chapters.length - 1);
|
|
114
|
-
const c = chapters[ch]!;
|
|
115
|
-
setCursor({
|
|
116
|
-
chapter: ch,
|
|
117
|
-
step: clamp(step, 0, c.narrations.length - 1),
|
|
118
|
-
});
|
|
119
|
-
},
|
|
120
|
-
[chapters],
|
|
121
|
-
);
|
|
122
|
-
|
|
123
|
-
const jumpToGlobal = useCallback(
|
|
124
|
-
(g: number) => {
|
|
125
|
-
const target = clamp(g, 0, totalGlobal - 1);
|
|
126
|
-
let acc = 0;
|
|
127
|
-
for (let i = 0; i < chapters.length; i++) {
|
|
128
|
-
const t = chapters[i]!.narrations.length;
|
|
129
|
-
if (target < acc + t) {
|
|
130
|
-
setCursor({ chapter: i, step: target - acc });
|
|
131
|
-
return;
|
|
132
|
-
}
|
|
133
|
-
acc += t;
|
|
134
|
-
}
|
|
135
|
-
},
|
|
136
|
-
[chapters, totalGlobal],
|
|
137
|
-
);
|
|
138
|
-
|
|
139
|
-
useEffect(() => {
|
|
140
|
-
const onKey = (e: KeyboardEvent) => {
|
|
141
|
-
if (e.target instanceof HTMLInputElement) return;
|
|
142
|
-
if (e.key === "ArrowRight" || e.key === " ") {
|
|
143
|
-
e.preventDefault();
|
|
144
|
-
next();
|
|
145
|
-
} else if (e.key === "ArrowLeft" || e.key === "Backspace") {
|
|
146
|
-
e.preventDefault();
|
|
147
|
-
prev();
|
|
148
|
-
} else if (e.key === "Home") {
|
|
149
|
-
jumpToChapter(0, 0);
|
|
150
|
-
} else if (e.key === "End") {
|
|
151
|
-
const last = chapters.length - 1;
|
|
152
|
-
jumpToChapter(last, chapters[last]!.narrations.length - 1);
|
|
153
|
-
} else if (e.key >= "1" && e.key <= "9") {
|
|
154
|
-
const n = Number(e.key) - 1;
|
|
155
|
-
if (n < chapters.length) jumpToChapter(n, 0);
|
|
156
|
-
}
|
|
157
|
-
};
|
|
158
|
-
window.addEventListener("keydown", onKey);
|
|
159
|
-
return () => window.removeEventListener("keydown", onKey);
|
|
160
|
-
}, [next, prev, jumpToChapter, chapters]);
|
|
161
|
-
|
|
162
|
-
const ch = chapters[cursor.chapter]!;
|
|
163
|
-
return {
|
|
164
|
-
cursor,
|
|
165
|
-
totalChapters: chapters.length,
|
|
166
|
-
chapterTotalSteps: ch.narrations.length,
|
|
167
|
-
globalIndex,
|
|
168
|
-
totalGlobal,
|
|
169
|
-
next,
|
|
170
|
-
prev,
|
|
171
|
-
jumpToChapter,
|
|
172
|
-
jumpToGlobal,
|
|
173
|
-
};
|
|
174
|
-
}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import type { ChapterDef } from "./types";
|
|
2
|
-
import ExampleChapter from "../chapters/01-example/Example";
|
|
3
|
-
import { narrations as exampleNarrations } from "../chapters/01-example/narrations";
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* Order = order of presentation.
|
|
7
|
-
*
|
|
8
|
-
* Each chapter MUST provide a `narrations: Narration[]` array. Its length
|
|
9
|
-
* is the chapter's step count — there is no `totalSteps` to maintain
|
|
10
|
-
* separately. This guarantees the audio synthesis pipeline, the runtime
|
|
11
|
-
* stepper, and the chapter `.tsx` switch on `step` cannot drift apart.
|
|
12
|
-
*
|
|
13
|
-
* Visual styling (color, fonts) comes entirely from the active theme —
|
|
14
|
-
* chapters never hard-code palette / font names. See THEMES.md.
|
|
15
|
-
*/
|
|
16
|
-
export const CHAPTERS: ChapterDef[] = [
|
|
17
|
-
{
|
|
18
|
-
id: "example",
|
|
19
|
-
title: "示例章节",
|
|
20
|
-
narrations: exampleNarrations,
|
|
21
|
-
Component: ExampleChapter,
|
|
22
|
-
},
|
|
23
|
-
];
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import type { ComponentType } from "react";
|
|
2
|
-
|
|
3
|
-
export interface ChapterStepProps {
|
|
4
|
-
step: number; // 0..(narrations.length - 1)
|
|
5
|
-
}
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* One narration entry — the spoken text for that step.
|
|
9
|
-
*
|
|
10
|
-
* Empty string ("") means "no audio for this step" (e.g. silent transition
|
|
11
|
-
* shot). Auto mode falls back to a short estimate when audio is missing or
|
|
12
|
-
* the text is empty.
|
|
13
|
-
*/
|
|
14
|
-
export type Narration = string;
|
|
15
|
-
|
|
16
|
-
export interface ChapterDef {
|
|
17
|
-
id: string;
|
|
18
|
-
title: string;
|
|
19
|
-
/**
|
|
20
|
-
* Per-step narration text. **Length === total steps in this chapter.**
|
|
21
|
-
* This is the single source of truth for step count and audio synthesis.
|
|
22
|
-
*/
|
|
23
|
-
narrations: Narration[];
|
|
24
|
-
Component: ComponentType<ChapterStepProps>;
|
|
25
|
-
}
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
/* ─────────────────────────────────────────────────────────────────────
|
|
2
|
-
* animations.css — generic, theme-agnostic motion vocabulary.
|
|
3
|
-
*
|
|
4
|
-
* All durations / easings come from the active theme's tokens.
|
|
5
|
-
* ───────────────────────────────────────────────────────────────────── */
|
|
6
|
-
|
|
7
|
-
/* MaskReveal — clip-path text wipe (left → right) */
|
|
8
|
-
.mask-reveal {
|
|
9
|
-
clip-path: inset(0 100% 0 0);
|
|
10
|
-
transition: clip-path 700ms var(--ease-quart);
|
|
11
|
-
}
|
|
12
|
-
.mask-reveal.in { clip-path: inset(0 0 0 0); }
|
|
13
|
-
|
|
14
|
-
/* Hairline rule grow — scaleX from 0 → 1, transform-origin: left */
|
|
15
|
-
.rule-grow {
|
|
16
|
-
transform: scaleX(0);
|
|
17
|
-
transform-origin: left;
|
|
18
|
-
transition: transform var(--dur-cinematic) var(--ease-expo);
|
|
19
|
-
}
|
|
20
|
-
.rule-grow.in { transform: scaleX(1); }
|
|
21
|
-
|
|
22
|
-
/* Generic vertical rise + opacity (small UI labels, captions) */
|
|
23
|
-
@keyframes rise-in {
|
|
24
|
-
from { opacity: 0; transform: translateY(14px); }
|
|
25
|
-
to { opacity: 1; transform: translateY(0); }
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
/* Scale-in with overshoot (use for stamp / badge / accent moment) */
|
|
29
|
-
@keyframes scale-in {
|
|
30
|
-
0% { opacity: 0; transform: scale(0.8); }
|
|
31
|
-
60% { opacity: 1; transform: scale(1.04); }
|
|
32
|
-
100% { opacity: 1; transform: scale(1); }
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
/* Pop with overshoot ease (more spring) */
|
|
36
|
-
@keyframes pop-in {
|
|
37
|
-
0% { opacity: 0; transform: scale(0.6) rotate(-2deg); }
|
|
38
|
-
100% { opacity: 1; transform: scale(1) rotate(0); }
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
/* Caret blink (bounded — for use INSIDE a sized animation) */
|
|
42
|
-
@keyframes caret-blink {
|
|
43
|
-
50% { opacity: 0; }
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
/* Slow-pulse halo (rings, notifications) */
|
|
47
|
-
@keyframes pulse-halo {
|
|
48
|
-
0% { opacity: 0.6; transform: scale(0.9); }
|
|
49
|
-
70% { opacity: 0; transform: scale(1.6); }
|
|
50
|
-
100% { opacity: 0; transform: scale(1.6); }
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
/* Letter stagger (use with .letter-stagger > .letter, set --i: 0..n) */
|
|
54
|
-
.letter-stagger > .letter {
|
|
55
|
-
display: inline-block;
|
|
56
|
-
opacity: 0;
|
|
57
|
-
transform: translateY(40px) scale(0.85);
|
|
58
|
-
animation: letter-rise var(--dur-slow) var(--ease-expo) forwards;
|
|
59
|
-
animation-delay: calc(var(--i, 0) * 60ms);
|
|
60
|
-
}
|
|
61
|
-
@keyframes letter-rise {
|
|
62
|
-
to { opacity: 1; transform: translateY(0) scale(1); }
|
|
63
|
-
}
|