Skip to content

Examples

Each pair shows the Carve source on the left and the HTML it produces on the right; toggle the output to Rendered to see the result in place. The HTML rendering reflects the intended output: think of these as the contract every implementation must honor. Reference implementations already exist (carve-js, carve-rs, carve-php) and are tested against exactly these fixtures.

The examples are split into three pages:

  • Core — the everyday syntax: emphasis, headings, links, images, lists, tables, code, attributes, frontmatter and more.
  • Extensions — tier-2/3 features layered on the core language: admonitions, abbreviations, mentions and tags, inline extensions, symbols, and cross-reference numbering.
  • Edge cases — precise boundary rules, table-alignment variants, lazy continuation, paragraph interruption, security hardening and other robustness guarantees.

Every ::: compare pair on those pages is also part of the conformance corpus: the HTML shown is generated from the same fixtures the reference implementations are tested against, so it cannot drift from real output.

Diagrams and charts are the exception: the mermaid, chart and other FencedRender presets are Tier-3, and Tier-3 output is deliberately never corpus-pinned, so those examples are shown as plain fences rather than compare pairs.

Released under the MIT License.