| name | moai-domain-html-report |
| description | Markdown-to-single-file-HTML report renderer. Six modes (status, incident, plan, explainer, financial, pr) selected automatically by report type. Zero external JS/CSS framework dependencies — inline SVG charts, single font-CDN exception for Korean readability. Self-contained output for email attachment, print, and offline viewing.
|
| when_to_use | Use when a markdown report must be rendered into a single self-contained HTML file. Trigger phrases include "render this report as HTML", "weekly status report as one HTML file", "convert the financial statements to an HTML report", "incident report as HTML", "printable business plan HTML", and "email-ready HTML report".
|
| license | Apache-2.0 |
| compatibility | Designed for Claude Code |
| allowed-tools | Read, Write, Edit, Grep, Glob, Bash |
| user-invocable | true |
| metadata | {"version":"1.0.0","category":"domain","status":"active"} |
html-report — Single-File HTML Report Renderer
Purpose and Scope
This skill is a terminal renderer that converts a markdown report into a single self-contained HTML file. It accepts any markdown body produced by a text, analysis, or reporting workflow and emits one .html file that opens directly in a browser, attaches to email, prints cleanly, and works offline.
Core principles:
- Zero external JS libraries (no Chart.js, D3, htmx)
- Zero external CSS frameworks (no Tailwind, Bootstrap)
- Inline SVG renders all charts directly
- A single font-CDN
<link> is the only external dependency, retained for Korean readability
This skill does not replace the markdown output. Markdown remains the single source of truth; HTML rendering is an additional branch that operates on it.
Input
| Argument | Required | Default | Description |
|---|
markdown | yes | — | The markdown body to convert |
mode | yes | — | status | incident | plan | explainer | financial | pr |
slug | no | auto-derived from the title | Output filename prefix |
output_path | no | <cwd>/reports/<slug>-<YYYYMMDD>.html | Output path |
font_stack | no | per-mode default | Font mapping override |
Output
A single .html file at <cwd>/reports/<slug>-<YYYYMMDD>.html:
- Size: ≤ 50KB (excluding font-CDN traffic, before body compression)
- External dependencies: one font-CDN
<link> + two preconnect hints (Korean fonts)
- Self-contained: opens directly in a browser, email-attachable, offline-capable
After rendering — report back to the user
Once the .html file is written, the response MUST do two things: