Starter templates

Three starters ship inside the binary — no fetching, no discovery paths. dogbed template <name> prints one to stdout so you copy it and own it. --list (or a bare dogbed template) shows the names:

$ dogbed template --list
verdict	PR review verdict: blockers, nits, summary.
release-notes	Release notes: highlights, breaking, added, changed, fixed.
reading-note	Reading note: author, rating, quote, notes.

The three starters

verdict — a PR review verdict: blockers, nits, summary. Example data in share/verdict.json.

release-notes — release notes: highlights, breaking changes, added, changed, fixed, a changelog link. Every section is guarded with {% if %} — empty data makes the section disappear.

reading-note — a reading note: author, source link, rating, quote, notes. Everything but the title is optional.

The round trip

The whole round trip — print a starter, render it with the document shell:

$ dogbed template release-notes > release-notes.knap
$ dogbed render release-notes.knap -d share/release-notes.json --title 'dogbed 0.2.0' --css style.css
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>dogbed 0.2.0</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<h1>dogbed 0.2.0</h1>
<p>0.2.0 — 2026-09-29</p>
<h2>Highlights</h2>
<ul>
<li>an optional HTML document shell (title and stylesheet flags)</li>
</ul>
<h2>Added</h2>
<ul>
<li>dogbed template &lt;name&gt; prints an embedded starter template</li>
</ul>
<h2>Changed</h2>
<ul>
<li>the output cap now covers the final document, shell included</li>
</ul>
<h2>Changelog</h2>
<p><a href="https://github.com/drawmeanelephant/dogbed/releases">Full changelog</a></p>
</body>
</html>

One thing to know before filling in your own data: Textile converts -- in values to an em-dash — see the document shell page for the details and the … workaround.

index · shell · templates · contract · dogfood · deploy
rendered by oliver