Create html
A collection of agent skills for AI-assisted development.
npx -y skills add pavelsimo/skills --skill create-htmlAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Transforms documents into polished self-contained HTML by reading Markdown/text directly, converting other supported inputs with uvx markitdown, selecting from 20 purpose-built templates, and generating the output.
SKILL.md
6.1 KB, as published. Nobody here has run it
create-html skill
Convert any document into a polished, self-contained HTML file. The skill reads Markdown and text directly, converts other inputs with uvx markitdown, then classifies the content and renders it with one of 20 purpose-built HTML templates drawn from the HTML Effectiveness library.
features
- converts PDF, DOCX, PPTX, XLSX, HTML, images, audio, ZIP, and YouTube URLs via
uvx markitdownwhile reading Markdown and plain text directly - auto-classifies document content and selects the most fitting template from 20 options
--template <id>flag lets you override the auto-selected template--output <file>flag controls the output filename (default:<input-basename>.html)--list-templatesprints the full template catalog and exits without processing- generates fully self-contained HTML files (no external CDN dependencies) that open directly in any browser
- confirmation step shows the chosen template before writing — user can accept, switch, or cancel
usage
/create-html <file> # auto-select template and convert
/create-html <file> --template 09 # force a specific template by ID
/create-html <file> --output out.html # set the output filename
/create-html <file> --template 11 --output report.html
/create-html --list-templates # print the 20-template catalog and exit
workflow
-
parse args: extract
<file>,--template <id>,--output <path>,--list-templates- if
--list-templatesis set: print the template reference table from reference/templates.md and stop - if no
<file>is provided: ask "which file would you like to convert?"
- if
-
convert to Markdown:
- if the file is already
.mdor.txt, skip markitdown and read it directly - otherwise run
uvx markitdown <file>and capture the output - if markitdown fails: surface the full error and stop
- if the file is already
-
classify content (auto-select template):
- headings structured like slide titles + bullet-heavy body →
09(slide-deck) ## Shipped/## In Progress/ dates + status words →11(status-report)- "incident", "post-mortem", "mitigation", timeline events →
12(incident-report) - code diffs /
+++/---diff markers, PR description →03(code-review-pr) flowchart/graph TD/ numbered process steps →13(flowchart-diagram)- milestone table / "Phase" / "Risk" columns →
16(implementation-plan) - "Option A / Option B", multiple design alternatives →
02(exploration-visual-designs) - side-by-side code comparisons, trade-off tables →
01(exploration-code-approaches) - technical concept explanation, glossary section →
15(research-concept-explainer) - feature documentation, TL;DR, FAQ section →
14(research-feature-explainer) - module diagrams, entry points, call graph →
04(code-understanding) - design tokens, component inventory →
05(design-system) - multiple UI component states/sizes →
06(component-variants) - animation specs, easing values, motion notes →
07(prototype-animation) - multi-screen flow, user journey, wireframes →
08(prototype-interaction) - SVG figures, diagram descriptions →
10(svg-illustrations) - before/after context, reviewer notes, file tour →
17(pr-writeup) - tickets, priorities, drag-and-drop ordering intent →
18(editor-triage-board) - feature toggles, flag groups, config table →
19(editor-feature-flags) - prompt templates, variable placeholders →
20(editor-prompt-tuner) - default (general prose, memos, documents) →
09(slide-deck)
- headings structured like slide titles + bullet-heavy body →
-
show selection: print
Using template <id> — <display name>. Proceed? [yes / no / pick]- yes: continue
- no: stop without writing any file
- pick: show the template reference from reference/templates.md and ask which ID to use; loop back to step 4
-
override: if
--template <id>was supplied, skip steps 3–4 and use that ID directly -
generate HTML: render the Markdown content using the selected template
- the HTML must be fully self-contained (inline CSS + JS, no external URLs)
- preserve headings, lists, tables, code blocks, and images from the Markdown
- apply the visual and interactive qualities appropriate for the chosen template (see reference/templates.md)
-
write output: save to
--outputpath; default is<input-basename>.htmlin the same directory- if the output file already exists: ask "overwrite <filename>? [yes / no]"
-
report:
✅ Written to <output> Open with: open <output> Template: <id> — <display name>
best practices
- always confirm before writing — show the chosen template and wait for approval; never write without user acknowledgment
- self-contained output only — inline all CSS and JS so the HTML file works offline and can be shared as a single file
- preserve document structure — headings become slide titles or section headers; tables stay tables; code blocks stay code blocks
- read Markdown and text directly — for
.mdand.txt, skip markitdown and read the file directly; useuvx markitdownfor other supported input formats - lean toward slide-deck as default — it is the most broadly useful template for prose documents; only choose a more specific template when signals are clear
- short IDs are zero-padded two digits —
--template 9and--template 09are both valid; normalize internally - respect
--outputpath exactly — do not append.htmlif the user already specified an extension - surface markitdown errors fully — if conversion fails, print the full error message; do not attempt HTML generation on empty or malformed Markdown