Lists and definitions

Unordered, ordered, and definition lists all render with the same vertical rhythm as body paragraphs. Definition lists carry extra responsibility in this theme — they’re the standard shape for option references and they switch to a hanging-indent layout in wide containers.

Bulleted and numbered

Plain <ul> and <ol> — no special markup:

  • Authoring HTML keeps you close to what the browser eventually paints.

  • The pipeline only transforms what it recognizes; everything else is passed through as-is.

  • That means odd-but-correct markup keeps working when the build runs against an unfamiliar page.

An ordered list with multi-paragraph items:

  1. Source. Article HTML lives under src/content/.

    Eleventy walks the tree; one file per output page.

  2. Pipeline. The apidocs transform runs the page through a sequence of cheerio passes.

    Anchors, code highlighting, embeds, image processing, ToC building, and symbol extraction all happen here.

  3. Layout. The processed content is wrapped in the Nunjucks shell with logo, nav, ToC, and footer slots.

Definition lists

Definition lists are the canonical shape for option references and glossary entries. In a narrow container the term sits above its description; once the article passes 48rem wide the term floats into a left column with the description hanging beside it.

The plain form:

Article

A single HTML file under src/content/. Becomes one URL.

Section

A <section> inside an article. Top-level sections become ToC entries; nested ones nest in the ToC the same way.

Symbol

Any element with class api. Symbols are harvested into a client-side fuzzysort index for instant lookup. See API reference style.

Width modifiers

Two class modifiers tune the layout for different content shapes:

.narrow

Use when terms are short — option names, status codes, single words. The term column shrinks from 10rem to 5rem so the descriptions get more room.

.compact

Trims the gap between rows. Use for dense reference tables where each row is a one-liner.

The same option list with .compact:

retries
Number of retry attempts on transient failure.
timeout
Per-request timeout in milliseconds.
backoff
Exponential backoff base, in milliseconds.
jitter
Randomization fraction applied to the backoff.

Deep linking into list items

Every <p>, <li>, and <dt> that doesn’t already have an id gets an auto-generated one based on a short hash of its text. That lets search results deep-link to the exact paragraph or term they matched.

The hash is stable across builds for unchanged content, so bookmarks survive routine edits elsewhere on the page. If you need a permanent, human-readable anchor for a particular item — say a glossary entry you link from many places — give it an explicit id instead:

<dl>
  <dt id="symbol">Symbol</dt>
  <dd>Any element with class <code>api</code>.</dd>
</dl>

Explicit ids take precedence over the auto-hash, so the deep link is yours to control wherever it matters.