Create Html Deck logo

Create Html Deck

Organization
awesome-skills
create-html-deck

Create, edit, and verify polished browser-native HTML slide decks. Use when the user asks for an HTML presentation, browser-based PPT, weekly-share deck, technical talk, or a slide deck that must display safely on laptops and 16:9 projectors.

Overview

Publisherawesome-skills
Repositorycreate-html-deck
Skill namecreate-html-deck
Stars
21
Forks
0
Bundled files
3
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • 3 bundled files

    Scripts, templates, and references the model can read while it works. Files are read-only and never executed.

  • Open source

    Published by awesome-skills on GitHub. Read the source before you install it.

Installation

Install the Create Html Deck AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/awesome-skills/create-html-deck/tree/main/skills/create-html-deck
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/awesome-skills/create-html-deck.git /tmp/create-html-deck
mkdir -p .claude/skills
cp -r /tmp/create-html-deck/skills/create-html-deck .claude/skills/create-html-deck
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Create Html Deck in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Create Html Deck on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Create Html Deck is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

Create HTML Deck

Build a complete local HTML presentation with a fixed 1920×1080 design canvas, responsive viewport fitting, keyboard navigation, portable assets, and evidence-based visual verification.

Preserve the output contract

  • Deliver a presentation, not a long document broken into pages. Make each slide legible in a few seconds and useful while someone is speaking.
  • Treat supplied notes, screenshots, specs, handoffs, and existing decks as source material. Do not ask again for facts already present there.
  • Ask only when a missing choice would materially change the audience, story, brand, or delivery format. Otherwise state the assumption and proceed.
  • Produce working HTML and assets. Do not stop at an outline, mockup screenshot, or design recommendation unless the user requested only that stage.
  • Keep claims honest and source links recoverable. Mark uncertain or draft content instead of polishing it into a false fact.

Choose the path

  • For a new deck, copy assets/deck-template.html into the requested output location and replace its sample content.
  • For an existing deck, inspect its HTML, CSS, JavaScript, images, and current screenshots before editing. Preserve its visual language unless the user asks for a redesign.
  • If the user explicitly requires .pptx, use a PowerPoint-specific skill instead. Do not rename HTML to .pptx.

Build the story first

  1. Identify the audience, speaking time, central claim, source material, and desired ending.
  2. Write a one-sentence narrative spine: problem → change → evidence → conclusion. Let every slide advance it.
  3. Give each slide one job. Prefer a claim, comparison, sequence, demonstration, or decision over a topic label.
  4. Keep slides sparse enough to present aloud. Move explanation into the speaker's delivery rather than shrinking text.
  5. Use supplied screenshots and diagrams as evidence, not decoration. Crop them around the point being discussed and keep source links clickable when appropriate.
  6. Do not invent metrics, quotes, product capabilities, or external claims. Verify unstable claims before placing them in the deck.

Before implementation, create a compact slide map with the slide number, claim, evidence, and intended visual form. Do not turn that map into a separate deliverable unless it helps the user review the story.

Define one visual system

Choose and reuse a small system across the deck:

  • two type roles and a deliberate scale
  • one neutral surface family plus one primary accent
  • one layout grid and consistent outer margins
  • a limited vocabulary for rules, labels, cards, diagrams, and image frames
  • a clear posture for corners, borders, shadows, and motion

Vary composition to support the story, not to prove that every slide is different. Avoid endless equal card grids, decorative charts, stock-photo heroes, vague icons, and gradients that carry no meaning. Prefer typography, contrast, alignment, and interruption as the main hierarchy tools.

Preserve the presentation contract

Use these defaults unless the existing deck has an intentional alternative:

  • 1920×1080 fixed design canvas
  • one self-contained HTML file plus a sibling assets/ directory
  • no remote runtime dependency unless explicitly justified
  • keyboard navigation with Arrow keys, Home, End, Page Up, and Page Down
  • visible current/total slide count
  • localStorage persistence for the current slide
  • print rules that expose every slide
  • 44px minimum hit targets for controls
  • 24px or larger body text on the design canvas

For small screens, center and scale the canvas with this geometry:

css
.stage { position: relative; width: 100%; height: 100%; overflow: hidden; }
.deck { position: absolute; left: 50%; top: 50%; width: 1920px; height: 1080px; }
js
const scale = Math.min(window.innerWidth / 1920, window.innerHeight / 1080);
deck.style.transform = `translate(-50%, -50%) scale(${scale})`;

Do not rely on display: grid; place-items: center plus scale(...) for a fixed-width deck. The unscaled layout box can overflow a laptop viewport and clip one side.

Use assets portably

  • Store local images under a sibling assets/ directory and reference them with relative paths.
  • Copy the HTML and its assets together when making a desktop or shareable copy.
  • Add meaningful alt text.
  • Avoid embedding large screenshots as base64 unless a single-file deliverable is explicitly required.

Implement the complete deck

  • Start from the bundled template for a new standalone deck, then replace every sample title, footer, and placeholder.
  • Keep navigation state in one small controller and derive the counter from the actual slide list.
  • Make previous/next controls operable with mouse, keyboard, and touch-sized hit targets.
  • Add meaningful document and slide titles. Use semantic headings, aria-hidden for inactive slides, and visible focus states.
  • Respect prefers-reduced-motion. Keep transitions short and functional.
  • Preserve the user's existing design language when editing a deck unless a redesign was requested.
  • Keep the console clean. Remove abandoned styles, unused sample assets, and unreachable slides before delivery.

Verify before delivery

Run the portable structural check:

bash
python3 <skill-dir>/scripts/check_deck.py /absolute/path/to/deck.html

Then open the deck in a real browser and inspect it. At minimum test:

ViewportPurpose
1512×98214-inch MacBook full screen
1512×85014-inch MacBook browser window
1366×768smaller laptop
1920×1080standard projector

For every viewport, confirm:

  • the deck rectangle stays fully inside the viewport
  • no document scrollbar appears
  • first and last slides render correctly
  • every local image has a non-zero natural size
  • keyboard navigation reaches every slide and stops at both ends
  • the slide counter matches the actual slide count
  • the browser reports no console or page errors
  • controls remain large enough to use without covering important content
  • text remains readable at normal laptop viewing distance

Inspect screenshots at laptop and projector sizes when visual quality matters. A passing DOM check does not prove that line breaks, density, or image crops look good.

If the deck contains a critical screenshot, diagram, hover explanation, or embedded link, exercise it explicitly. If external assets are unavoidable, test the deck once with normal network access and state that dependency in the handoff.

Deliver

Return the exact HTML path and, when present, the containing folder that must travel with it. State the slide count, the viewports actually tested, and any remaining remote dependency or browser caveat. If a desktop copy was requested, synchronize it only after the source version passes verification.

Bundled files

The model reads these on demand while the skill is loaded. They are exposed as readable files and are never executed.

Frequently asked questions

What does the Create Html Deck AI skill do?

Create, edit, and verify polished browser-native HTML slide decks. Use when the user asks for an HTML presentation, browser-based PPT, weekly-share deck, technical talk, or a slide deck that must display safely on laptops and 16:9 projectors.

Why use Create Html Deck on TypingMind?

Because you install it once and use it with any model. Create Html Deck is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Create Html Deck in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/awesome-skills/create-html-deck/tree/main/skills/create-html-deck. TypingMind reads its SKILL.md and bundles its files and installs it as a skill you can enable per chat.

Which AI models can use Create Html Deck?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Create Html Deck?

As many as you like. As long as a model supports skills, you can use Create Html Deck with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Create Html Deck AI skill free?

Yes. It is published on GitHub by awesome-skills under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇