Skip to content

Prose

Generated from front/ui/catalogue/examples/Prose.json

learning · static (no JavaScript) · no children. All components: component playground.

Long-form Markdown (GFM tables, block quotes, $$ math $$). Raw HTML is escaped. Use for articles, briefs and descriptions.

Rendered from the example props below with the real component. Theme: coffee · oncall · nightsky · gravity · poland · ulam · platform · open on its own

{
"component": "Prose",
"props": {
"markdown": "## Extraction\n\nWater dissolves **acids first**, then sugars, then bitter compounds.\n\n1. Grind\n2. Pour\n3. Taste",
"dropCap": false,
"size": "md"
}
}
Prop Type Required Notes
markdown string yes Markdown source. max length 60000
dropCap boolean Editorial drop cap on the first paragraph. default false
size "sm" | "md" | "lg" Text size. default "md"
id string Anchor id for in-page links (letters, digits, dashes). max length 40

What a text-only client, an unknown renderer or a plain-text channel shows for the example above.

## Extraction
Water dissolves **acids first**, then sugars, then bitter compounds.
1. Grind
2. Pour
3. Taste

A node whose props fail the schema never breaks the page: the renderer shows the plain-text fallback instead (and logs the issues in development).

{
"markdown": 42
}

Issues:

  • /markdown expected string, got integer

Rendered as:

42

axe-core: 8 rules passed, 0 violations, 0 need manual review. Run at build time on the server-rendered HTML in jsdom. Colour contrast and layout rules need a browser and are covered by the Playwright axe scans of the reference frontend.