HTML Coder Skill
Expert skill for professional HTML development with focus on semantic markup, accessibility, HTML5 features, and standards-compliant web content.
When to Use This Skill
- Creating HTML documents with semantic structure
- Building accessible forms with HTML5 validation
- Implementing responsive markup and multimedia
- Using HTML5 APIs (Canvas, SVG, Storage, Geolocation)
- Troubleshooting validation or accessibility issues
OpenSquilla Webpage Delivery
For a new runnable webpage when workspace file-authoring tools are available:
- Create a filesystem-safe, dedicated project subdirectory such as
webpage-<topic-slug>/; never place a generated site directly in the
workspace root.
- Keep
index.html, local CSS/JavaScript, and every local asset inside that
project root, using browser-relative references.
- Validate the finished project, then call
publish_artifact exactly once
with the entry file and the complete dedicated root:
{
"path": "webpage-<topic-slug>/index.html",
"mime": "text/html",
"bundle": "directory",
"bundle_root": "webpage-<topic-slug>"
}
Do not bundle the entire workspace. When a caller explicitly requests
source-only output, forbids tool calls, or supplies its own deterministic
writer—as AwesomeWebpageMetaSkill does—follow that narrower caller contract
instead. When file authoring or publish_artifact is unavailable, return only
the requested guidance or source and do not claim that a runnable project was
published.
Core Capabilities
- Semantic HTML: Document structure, content sections, accessibility-first markup
- Forms: All input types, validation attributes, fieldsets, labels
- Media: Responsive images, audio/video, Canvas, SVG
- HTML5 APIs: Web Storage, Geolocation, Drag & Drop, Web Workers
- Accessibility: ARIA, screen reader support, WCAG compliance
Essential References
Core documentation for HTML experts:
references/add-css-style.md - Add CSS via link tag, inline, or embedded in html
references/add-javascript.md - Add JavaScript via script src="link.js" tag, inline script, or embedded in html
references/attributes.md - HTML attribute essentials
references/essentials.md - Semantic markup, validation, responsive techniques
references/global-attributes.md - Complete global attribute information
references/glossary.md - Complete HTML element and attribute reference
references/standards.md - HTML5 specifications and standards
Best Practices
Semantic HTML - Use elements that convey meaning: <article>, <nav>, <header>, <section>, <footer>, not div soup.
Accessibility First - Proper heading hierarchy, alt text, labels with inputs, keyboard navigation, ARIA when needed.
HTML5 Validation - Leverage built-in validation (required, pattern, type="email") before JavaScript.
Responsive Images - Use <picture>, srcset, and loading="lazy" for performance.
Performance - Minimize DOM depth, optimize images, defer non-critical scripts, use semantic elements.
Quick Patterns
Semantic Page Structure
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Page Title</title>
</head>
<body>
<header><nav><!-- Navigation --></nav></header>
<main><article><!-- Content --></article></main>
<aside><!-- Sidebar --></aside>
<footer><!-- Footer --></footer>
</body>
</html>
Accessible Form
<form method="post" action="/submit">
<fieldset>
<legend>Contact</legend>
<label for="email">Email:</label>
<input type="email" id="email" name="email" required
pattern="[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,}$">
<button type="submit">Send</button>
</fieldset>
</form>
Responsive Image
<picture>
<source media="(min-width: 1200px)" srcset="large.webp">
<source media="(min-width: 768px)" srcset="medium.webp">
<img src="small.jpg" alt="Description" loading="lazy">
</picture>
Troubleshooting
- Validation: W3C Validator (validator.w3.org), check unclosed tags, verify nesting
- Accessibility: Lighthouse audit, screen reader testing, keyboard nav, color contrast
- Compatibility: Can I Use (caniuse.com), feature detection, provide fallbacks
Key Standards
1---
2name: html-coder
3visibility: public
4invocation: direct
5description: 'Expert HTML development skill for building web pages, forms, and interactive content. Use when creating HTML documents, structuring web content, implementing semantic markup, adding forms and media, working with HTML5 APIs, or needing HTML templates, best practices, and accessibility guidance. Supports modern HTML5 standards and responsive design patterns.'
6description_zh: "用于构建网页、表单和交互内容的专业HTML开发技能。当创建HTML文档、组织网页内容、实现语义化标记、添加表单和媒体、使用HTML5 API,或需要HTML模板、最佳实践和无障碍指引时使用。支持现代HTML5标准和响应式设计模式。"
7homepage: https://clawhub.ai/jhauga/html-coder
8collaborators:
9 - make-skill-template
10 - finalize-agent-prompt
11provenance:
12 origin: clawhub-mit0
13 license: MIT-0
14 upstream_url: https://clawhub.ai/jhauga/html-coder
15 maintained_by: OpenSquilla
16---
17
18# HTML Coder Skill
19
20Expert skill for professional HTML development with focus on semantic markup, accessibility, HTML5 features, and standards-compliant web content.
21
22## When to Use This Skill
23
24- Creating HTML documents with semantic structure
25- Building accessible forms with HTML5 validation
26- Implementing responsive markup and multimedia
27- Using HTML5 APIs (Canvas, SVG, Storage, Geolocation)
28- Troubleshooting validation or accessibility issues
29
30## OpenSquilla Webpage Delivery
31
32For a new runnable webpage when workspace file-authoring tools are available:
33
341. Create a filesystem-safe, dedicated project subdirectory such as
35 `webpage-<topic-slug>/`; never place a generated site directly in the
36 workspace root.
372. Keep `index.html`, local CSS/JavaScript, and every local asset inside that
38 project root, using browser-relative references.
393. Validate the finished project, then call `publish_artifact` exactly once
40 with the entry file and the complete dedicated root:
41
42```json
43{
44 "path": "webpage-<topic-slug>/index.html",
45 "mime": "text/html",
46 "bundle": "directory",
47 "bundle_root": "webpage-<topic-slug>"
48}
49```
50
51Do not bundle the entire workspace. When a caller explicitly requests
52source-only output, forbids tool calls, or supplies its own deterministic
53writer—as AwesomeWebpageMetaSkill does—follow that narrower caller contract
54instead. When file authoring or `publish_artifact` is unavailable, return only
55the requested guidance or source and do not claim that a runnable project was
56published.
57
58## Core Capabilities
59
60- **Semantic HTML**: Document structure, content sections, accessibility-first markup
61- **Forms**: All input types, validation attributes, fieldsets, labels
62- **Media**: Responsive images, audio/video, Canvas, SVG
63- **HTML5 APIs**: Web Storage, Geolocation, Drag & Drop, Web Workers
64- **Accessibility**: ARIA, screen reader support, WCAG compliance
65
66## Essential References
67
68Core documentation for HTML experts:
69
70- [`references/add-css-style.md`](references/add-css-style.md) - Add CSS via `link` tag, inline, or embedded in html
71- [`references/add-javascript.md`](references/add-javascript.md) - Add JavaScript via `script src="link.js"` tag, inline `script`, or embedded in html
72- [`references/attributes.md`](references/attributes.md) - HTML attribute essentials
73- [`references/essentials.md`](references/essentials.md) - Semantic markup, validation, responsive techniques
74- [`references/global-attributes.md`](references/global-attributes.md) - Complete global attribute information
75- [`references/glossary.md`](references/glossary.md) - Complete HTML element and attribute reference
76- [`references/standards.md`](references/standards.md) - HTML5 specifications and standards
77
78## Best Practices
79
80**Semantic HTML** - Use elements that convey meaning: `<article>`, `<nav>`, `<header>`, `<section>`, `<footer>`, not div soup.
81
82**Accessibility First** - Proper heading hierarchy, alt text, labels with inputs, keyboard navigation, ARIA when needed.
83
84**HTML5 Validation** - Leverage built-in validation (`required`, `pattern`, `type="email"`) before JavaScript.
85
86**Responsive Images** - Use `<picture>`, srcset, and `loading="lazy"` for performance.
87
88**Performance** - Minimize DOM depth, optimize images, defer non-critical scripts, use semantic elements.
89
90## Quick Patterns
91
92### Semantic Page Structure
93```html
94<!DOCTYPE html>
95<html lang="en">
96<head>
97 <meta charset="UTF-8">
98 <meta name="viewport" content="width=device-width, initial-scale=1.0">
99 <title>Page Title</title>
100</head>
101<body>
102 <header><nav><!-- Navigation --></nav></header>
103 <main><article><!-- Content --></article></main>
104 <aside><!-- Sidebar --></aside>
105 <footer><!-- Footer --></footer>
106</body>
107</html>
108```
109
110### Accessible Form
111```html
112<form method="post" action="/submit">
113 <fieldset>
114 <legend>Contact</legend>
115 <label for="email">Email:</label>
116 <input type="email" id="email" name="email" required
117 pattern="[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,}$">
118 <button type="submit">Send</button>
119 </fieldset>
120</form>
121```
122
123### Responsive Image
124```html
125<picture>
126 <source media="(min-width: 1200px)" srcset="large.webp">
127 <source media="(min-width: 768px)" srcset="medium.webp">
128 <img src="small.jpg" alt="Description" loading="lazy">
129</picture>
130```
131
132## Troubleshooting
133
134- **Validation**: W3C Validator (validator.w3.org), check unclosed tags, verify nesting
135- **Accessibility**: Lighthouse audit, screen reader testing, keyboard nav, color contrast
136- **Compatibility**: Can I Use (caniuse.com), feature detection, provide fallbacks
137
138## Key Standards
139
140- **WHATWG HTML Living Standard**: https://html.spec.whatwg.org/
141- **WCAG Accessibility**: https://www.w3.org/WAI/WCAG21/quickref/
142- **MDN Web Docs**: https://developer.mozilla.org/en-US/docs/Web/HTML
143
144---