Skip to content
KaufmannCommerce UI
Foundations · v0.1⌘ K

Kaufmann Commerce UI / Content family

Reader

A payload-driven, interactive reading surface with continuous chapter loading, responsive reading modes, and a safe Markdown presentation contract.

Continuous reader

Read it as a real book: scroll inside the surface, jump between chapters, change the paper and type size, or switch to chapter-focused scrolling.

Live specimen
Chapter
Chapter 1 / 5At the Threshold
Appearance

Part one · Arrival

At the Threshold

The forest does not hurry, yet every path arrives in its season.

Morning entered the clearing by degrees. First the pale edges of the birches became visible, then the path, and finally the small red roof beyond the garden wall. Nothing announced the change, but the whole place had become legible.

Mara carried her cup to the step and listened. A blackbird turned the quiet into a sequence of bright, exact notes. Between them she could hear the stream below the orchard and the soft work of leaves moving against one another.

She had come to think of attention as a form of keeping. What was noticed was not possessed, but it was less easily lost. The names of plants, the hour of shadow on the wall, the week in which the swallows returned—each became part of the household book.

A small inventory

  • the blue-grey light before breakfast
  • three deer tracks beside the hazel
  • rain held briefly in the foxglove bells

By noon the path would be ordinary again. For now it held the colour of early spring, and she followed it towards the trees.

Part two · April

The Light Between Trees

The first warm week made every distance feel shorter. A walk that had belonged to winter became a loose ribbon through celandine, young nettles and the white stars of wood anemones.

Light did not simply fall here. It arrived altered by each branch it crossed: sharpened, softened, divided into moving rooms. Mara stopped where two beeches leaned away from one another and opened a small chamber in the canopy.

A place becomes intimate when you begin to recognise how its light changes.

She marked the hour in her notebook, although the hour was not really the point. The point was return—the possibility of standing in the same place next week and meeting a different version of it.

The practice of returning

To revisit a path is not to repeat it. The walker changes; the weather changes; the path itself is busy becoming. A familiar route can therefore be read like a long sentence whose meaning grows at every encounter.

Narrow reading mode

The same component switches to a compact chapter picker and reduced controls when its own container becomes narrow—independent of the page viewport.

Live specimen
Chapter
Chapter 1 / 5At the Threshold
Appearance

Part one · Arrival

At the Threshold

The forest does not hurry, yet every path arrives in its season.

Morning entered the clearing by degrees. First the pale edges of the birches became visible, then the path, and finally the small red roof beyond the garden wall. Nothing announced the change, but the whole place had become legible.

Mara carried her cup to the step and listened. A blackbird turned the quiet into a sequence of bright, exact notes. Between them she could hear the stream below the orchard and the soft work of leaves moving against one another.

She had come to think of attention as a form of keeping. What was noticed was not possessed, but it was less easily lost. The names of plants, the hour of shadow on the wall, the week in which the swallows returned—each became part of the household book.

A small inventory

  • the blue-grey light before breakfast
  • three deer tracks beside the hazel
  • rain held briefly in the foxglove bells

By noon the path would be ordinary again. For now it held the colour of early spring, and she followed it towards the trees.

Part two · April

The Light Between Trees

The first warm week made every distance feel shorter. A walk that had belonged to winter became a loose ribbon through celandine, young nettles and the white stars of wood anemones.

Light did not simply fall here. It arrived altered by each branch it crossed: sharpened, softened, divided into moving rooms. Mara stopped where two beeches leaned away from one another and opened a small chamber in the canopy.

A place becomes intimate when you begin to recognise how its light changes.

She marked the hour in her notebook, although the hour was not really the point. The point was return—the possibility of standing in the same place next week and meeting a different version of it.

The practice of returning

To revisit a path is not to repeat it. The walker changes; the weather changes; the path itself is busy becoming. A familiar route can therefore be read like a long sentence whose meaning grows at every encounter.

Content is data, not component markup

Each chapter is an ordinary serialisable payload with an ID, title, and Markdown string. The reader safely renders paragraphs, headings, emphasis, links, quotes, lists, dividers, and inline code without accepting arbitrary HTML.

Only the first chapters are mounted initially. Approaching the end of the internal reading viewport progressively reveals the next chapters, while the active chapter and overall reading progress update locally. The API makes no backend, entitlement, persistence, or synchronisation claim yet.

Astro
---
import { Reader } from "@kaufmann/ui";
import type { ReaderPayload } from "@kaufmann/ui";

const book: ReaderPayload = {
  id: "field-notes",
  title: "Field Notes",
  chapters: [
    { id: "spring", title: "Spring", markdown: chapterMarkdown },
    { id: "summer", title: "Summer", markdown: nextChapterMarkdown },
  ],
};
---

<Reader client:load payload={book} />