From atv-paperboard
Render a structured input (JSON or Markdown) into a paired HTML + DESIGN.md + meta.yaml artifact triple. Serves the result on loopback HTTP and opens a browser tab (unless running headless/remote). Invokes `paperboard render` via the atv-paperboard CLI.
How this skill is triggered — by the user, by Claude, or both
Slash command
/atv-paperboard:render-artifactThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Converts structured LLM output into a beautiful, linted HTML artifact governed by a DESIGN.md.
Converts structured LLM output into a beautiful, linted HTML artifact governed by a DESIGN.md.
paperboard render --input <path-or-> [--design <name|path|url>] [--tier atv|pico|daisy] [--no-open]
atv — the dark designed-document tier; use for dashboards, reports, and
any rich multi-section output. This is the right answer in almost all cases.pico / daisy — light-document tiers; pick only when the target audience explicitly
wants a lightweight, framework-styled page.--input -).--design (starter name, path, or URL) and --tier (omit for atv).--no-open was NOT passed and the environment is non-headless, the browser opens automatically.The command writes three files and prints their paths:
<slug>.html — single-file artifact<slug>.DESIGN.md — design sidecar<slug>.meta.yaml — metadata (tier, harness, lint_passed, created_at)The atv tier renders three distinct layouts depending on what --input receives.
Prefer the richest layout the content supports — most agent output is structured
enough to use the section graph, which is the only mode that exercises the
designed-document treatment (hero strip, numbered sections, accent typography).
JSON with a top-level sections: [...] array. Each entry has a kind that maps
to one of 15 emitters. Run paperboard schema to see them all, or
paperboard schema --kind <name> for fields + an example payload.
{
"title": "Pipeline Report",
"sections": [
{"kind": "hero", "eyebrow": "Release", "title": "v0.2.0 pipeline.", "sub": "All checks green."},
{"kind": "sec", "num": "01", "title": "Build matrix.",
"body": [{"kind": "status-table", "rows": [{"check": "build", "status": "PASS"}]}]}
]
}
Available kinds (see paperboard schema for full input shape per kind):
hero, sec, stack-list, dep-list, q-list, steps, code-shell,
color-strip, fit-row, anti, checklist, callout, subhead,
props-table, status-table.
{title, subtitle, rows}Use when the content is genuinely just a table and a heading. Renders as
<h1> + <h2> + <table>; no hero strip, no card sections.
{"title": "Bug Hunt", "subtitle": "Phase 7 triage", "rows": [{"id": "RW-1", "status": "FIXED"}]}
paperboard render --input report.mdUse only when the content is genuinely prose (long-form writing, narrative
documentation). Renders the dark editorial typography in .prose mode.
No hero, no sections.
paperboard schema # list all 15 kinds
paperboard schema --kind hero # detail + example for one kind
paperboard schema --format json # full machine-readable dump
npx claudepluginhub all-the-vibes/atv-paperboard --plugin atv-paperboardCreates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.