The @tanstack/markdown/html entry exports the HTML renderer without React.
import {
renderBlock,
renderDocument,
renderHtml,
renderInline,
} from '@tanstack/markdown/html'function renderHtml(
input: MarkdownInput,
options?: RenderOptions,
): stringParses string input when necessary and renders all document children joined by newlines.
function renderDocument(
document: MarkdownDocument,
options?: RenderOptions,
): stringRenders an existing document. This is an alias with a narrower input type.
function renderBlock(
node: BlockNode,
options?: RenderOptions,
): stringRuns extension HTML hooks, then renders one block node.
function renderInline(
node: InlineNode,
options?: RenderOptions,
): stringRuns extension HTML hooks, then renders one inline node.
RenderOptions includes every ParseOptions field plus:
| Option | Default | Behavior |
|---|---|---|
| highlighter | none | Return trusted HTML for code contents |
| codeLineNumbers | unset | Forward the line-number preference to the highlighter |
| headingAnchors | false | Append default or configured links to headings with IDs |
When rendering a pre-parsed document, parse-only options do not retroactively change its AST. Renderer options and extension renderHtml hooks still apply.