{"id":50794385,"url":"https://github.com/korbinjoe/slides-skill","last_synced_at":"2026-06-12T13:31:56.713Z","repository":{"id":363563116,"uuid":"1256859958","full_name":"korbinjoe/slides-skill","owner":"korbinjoe","description":"A agent skill for slides","archived":false,"fork":false,"pushed_at":"2026-06-09T11:22:52.000Z","size":957,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-06-09T13:15:29.343Z","etag":null,"topics":["agent-skills","claude-code","html-slides","presentation","slides"],"latest_commit_sha":null,"homepage":"","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/korbinjoe.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-06-02T06:35:25.000Z","updated_at":"2026-06-09T11:22:56.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/korbinjoe/slides-skill","commit_stats":null,"previous_names":["korbinjoe/slides-skill"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/korbinjoe/slides-skill","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/korbinjoe%2Fslides-skill","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/korbinjoe%2Fslides-skill/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/korbinjoe%2Fslides-skill/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/korbinjoe%2Fslides-skill/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/korbinjoe","download_url":"https://codeload.github.com/korbinjoe/slides-skill/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/korbinjoe%2Fslides-skill/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34247461,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-12T02:00:06.859Z","response_time":109,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["agent-skills","claude-code","html-slides","presentation","slides"],"created_at":"2026-06-12T13:31:55.805Z","updated_at":"2026-06-12T13:31:56.695Z","avatar_url":"https://github.com/korbinjoe.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Slides\n\nProfessional presentation slides as self-contained HTML. No dependencies, no build step — open in any browser, present anywhere.\n\n\u003cimg width=\"3840\" height=\"15353\" alt=\"image\" src=\"https://github.com/user-attachments/assets/3a772176-f577-4920-9175-9da0947011dd\" /\u003e\n\n**[Theme Sampler](https://korbinjoe.github.io/slides-skill/)** · Browse all 50 themes with playable demo decks\n\nExample output: [`examples/multi-agent-orchestration.html`](examples/multi-agent-orchestration.html) (open locally in a browser)\n\n[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE)\n\n## Install\n\n**skills.sh**\n```bash\nnpx skills add korbinjoe/slides-skill\n```\n\n**Claude Code Plugin Marketplace**\n```\n/plugin marketplace add korbinjoe/slides-skill\n/plugin install slides@slides-skill\n```\n\n**Manual**\n```bash\ngit clone git@github.com:korbinjoe/slides-skill.git ~/.claude/skills/slides\n```\n\n---\n\n## What You Get\n\n- **50 themes** — foundational palettes plus `ppt-master`-inspired editorial, enterprise, and industry directions\n- **Interactive theme sampler** — preview every theme at [korbinjoe.github.io/slides-skill](https://korbinjoe.github.io/slides-skill/); filter by light/dark or tags\n- **Playable theme demos** — each theme opens a full demo deck with navigation, fullscreen, timer, and speaker notes\n- **19 slide types** — from bold statements to inline SVG diagrams\n- **Self-contained HTML** — single file, no external dependencies (except font CDN)\n- **Speaker notes + timer** — press `N` for notes, `T` for timer\n- **Keyboard navigation** — arrow keys, swipe, click, fullscreen (`F`)\n- **Deck contract + validator** — lock the plan, then check the generated HTML\n- **Anti-AI design system** — rhythm rules that prevent generated-looking decks\n- **1280x720 base** with automatic scaling to any screen\n\n## Themes (50)\n\nPreview all themes in the **[live sampler](https://korbinjoe.github.io/slides-skill/)**, or open `assets/theme-sampler.html` locally:\n\n```bash\nopen assets/theme-sampler.html\n```\n\nClick any card to open `theme-demo.html?style=\u003cslug\u003e` — a full playable demo for that theme. Filter by light/dark or tags (Editorial, Enterprise, Brand, High Density, etc.).\n\n### Foundational themes (12)\n\nDocumented in [`references/themes.md`](references/themes.md). Default starting point for most technical talks.\n\n| Theme | Mode | Accent | Font | Best For |\n|-------|------|--------|------|----------|\n| Obsidian | Dark | Gold | Outfit | Tech keynotes, product launches |\n| Glacier | Dark | Ice Blue | Inter | Data reports, engineering |\n| Paper | Light | Apple Blue | DM Sans | Business, corporate |\n| Ink | Light | Indigo | Playfair Display | Design, editorial |\n| Ember | Dark | Orange-Red | Space Grotesk | Startup pitch, bold claims |\n| Forest | Dark | Emerald | Outfit | Growth, sustainability |\n| Neon | Dark | Hot Pink | Space Grotesk | Creative, high-energy |\n| Mono | Dark | Pure White | JetBrains Mono | Developer talks, minimalist |\n| Dusk | Dark | Dusty Rose | Sora | Refined, evening editorial |\n| Slate | Dark | Steel Gray | Manrope | Understated, architectural |\n| Sand | Light | Warm Brown | Plus Jakarta Sans | Luxury, artisanal |\n| Crimson | Dark | Wine Red | Outfit | Authoritative, powerful |\n\n### Extended themes (38)\n\nAdapted from `ppt-master`. Same sampler, same workflow — additional brand, enterprise, editorial, and industry directions.\n\n| Documentation | Themes |\n|---------------|--------|\n| [`references/style-presets.md`](references/style-presets.md) | Anthropic, Google, Academic Defense, AI Ops, Government Blue/Red, Medical University, Pixel Retro, Psychology Attachment, China Telecom, POWERCHINA Classic/Modern, CATARC Business/Classic/Modern, CMB Transaction Banking, Chongqing University, Brutalist Newspaper, Glassmorphism SaaS, Swiss Grid, and 12 more listed in the quick reference table |\n| [`assets/theme-data.js`](assets/theme-data.js) | All 50 themes (CSS variables, tags, demo content); sole source for expressive themes like Agent Coral, Code Amber, Ink Wash Literati |\n\nFull slug list: [`references/theme-slugs.md`](references/theme-slugs.md).\n\n## Quick Start\n\nAfter installing, just describe what you want in natural language:\n\n```\n\"Create a 15-minute talk about our new API architecture for the engineering team\"\n```\n\n```\n\"Make a pitch deck for our seed round — 10 slides, keep it bold\"\n```\n\n```\n\"I need slides for tomorrow's design review, covering the rebrand progress\"\n```\n\nThe skill handles theme selection, narrative structure, slide type choices, and speaker notes. Agent workflow details live in [`SKILL.md`](SKILL.md).\n\n## Slide Types\n\n| Type | Purpose |\n|------|---------|\n| Cover | Title slide with speaker, date, and context |\n| Section Intro | Chapter divider between major sections |\n| Statement | One bold claim, no label — the words do the work |\n| Two Column | Side-by-side comparison or parallel content |\n| Three Column | Feature grid with asymmetric variant |\n| Big Number | Single metric as the hero element |\n| Comparison | Before/after with visual distinction |\n| Quote | Expert opinion or user testimonial |\n| Flow | Process or pipeline with step markers |\n| Code | Code snippets, terminal output, directory trees |\n| Layer Stack | Hierarchical breakdown with tagged levels |\n| Diagram | Inline SVG for architecture or topology |\n| Stats Row | 2-3 horizontal metrics |\n| Four Grid | 2x2 cards with hero+supporting variant |\n| Timeline | Horizontal milestones for roadmaps |\n| End | Closing slide — summary or memorable statement |\n| Interactive Question | Audience engagement with voting options |\n| Breath | Near-empty reset slide for pacing |\n| Hero Image | Full-slide visual centerpiece with text overlay |\n\n## Installation Details\n\n### Option 1: skills.sh (recommended)\n\n```bash\nnpx skills add korbinjoe/slides-skill\n```\n\nThis registers the skill with Claude Code. It will be available in all future sessions.\n\n### Option 2: Claude Code Plugin Marketplace\n\n```\n/plugin marketplace add korbinjoe/slides-skill\n/plugin install slides@slides-skill\n```\n\n### Option 3: Manual\n\nClone the repository into your Claude Code skills directory:\n\n```bash\ngit clone git@github.com:korbinjoe/slides-skill.git ~/.claude/skills/slides\n```\n\nThen add the skill path to your Claude Code configuration.\n\n## How It Works\n\n1. **Theme selection** — pick from 50 themes via the [interactive sampler](https://korbinjoe.github.io/slides-skill/)\n2. **Narrative planning** — the skill structures your content into a coherent arc\n3. **Deck contract** — `deck_plan.md` and `deck_lock.json` keep theme slug, slide types, rhythm, and notes aligned\n4. **Slide generation** — each slide gets the right layout type for its content\n5. **Validation** — `scripts/validate_deck.py` checks structure, notes, anti-AI rhythm, and deck-lock consistency\n6. **Single HTML output** — one file you can open, share, or host anywhere\n\nThe output is a single `.html` file with inline CSS, inline JS, and no build step. It renders at 1280x720 and scales automatically.\n\n## Project Layout\n\n| Path | Purpose |\n|------|---------|\n| `SKILL.md` | Agent workflow and theme resolution rules |\n| `assets/template.html` | Base deck skeleton |\n| `assets/theme-sampler.html` | Interactive theme picker UI |\n| `assets/theme-demo.html` | Playable demo decks per preset |\n| `assets/theme-data.js` | Sampler data + theme CSS variables (metadata only) |\n| `assets/theme-demos/` | Per-theme playable demo slide content (`{slug}.json`) |\n| `assets/theme-demos.js` | Bundled demo content for `theme-demo.html` (generated) |\n| `references/themes.md` | 12 core theme definitions |\n| `references/style-presets.md` | Extended theme definitions (38 themes from `ppt-master`) |\n| `references/theme-slugs.md` | Canonical slugs for all 50 themes |\n| `references/slide-types.md` | Slide type HTML templates |\n| `references/deck-contract.md` | Deck lock schema and rhythm rules |\n| `scripts/validate_deck.py` | HTML deck validator |\n| `scripts/verify_themes.py` | Theme count, slug uniqueness, doc sync |\n| `scripts/sync_theme_slugs.py` | Regenerate `references/theme-slugs.md` from `theme-data.js` |\n| `scripts/build_theme_demos.py` | Bundle `assets/theme-demos/*.json` into `theme-demos.js` |\n\n## Validation\n\nGenerated decks should pass the local validator with zero errors and zero warnings:\n\n```bash\npython3 scripts/validate_deck.py path/to/deck.html --strict\n```\n\nUse `--strict` as the delivery gate — it treats Anti-AI rhythm rules, missing deck-lock, and missing slide metadata as failures.\n\nThe validator also checks `deck-lock` theme slugs against the sampler registry and compares per-slide `type`/`rhythm` between the lock and HTML.\n\nTheme registry integrity (50 themes, unique slugs, `theme-slugs.md` in sync):\n\n```bash\npython3 scripts/verify_themes.py\npython3 scripts/sync_theme_slugs.py   # regenerate slug doc after theme-data.js changes\n```\n\nCI runs `verify_themes.py`, the reference deck `--strict` check, and pytest on every push/PR.\n\nReference example: [`examples/multi-agent-orchestration.html`](examples/multi-agent-orchestration.html) passes `--strict`.\n\n## Contributing\n\nContributions are welcome. Please keep changes focused:\n\n- **New themes** — add to `assets/theme-data.js` and the sampler; add full CSS to `references/themes.md` or `references/style-presets.md` when applicable; add demo slides to `assets/theme-demos/\u003cslug\u003e.json`; run `python3 scripts/sync_theme_slugs.py` and `python3 scripts/build_theme_demos.py`\n- **Sampler UI** — edit `assets/theme-sampler.html` and `assets/theme-demo.html` as needed\n- **New slide types** — add to `references/slide-types.md` with HTML template and usage guidance\n- **New visual patterns** — add selection rules to `references/visualizations.md`\n- **GitHub Pages** — update `.github/workflows/pages.yml` when adding sampler assets\n- **Bug fixes** — open an issue first if the fix is non-trivial\n\n## License\n\n[MIT](LICENSE)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkorbinjoe%2Fslides-skill","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkorbinjoe%2Fslides-skill","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkorbinjoe%2Fslides-skill/lists"}