TanStack Markdown
A tiny, fast, deterministic Markdown parser and renderer for blogs and documentation.
- 4.6 KB gzip parser
- 6.4 KB gzip HTML renderer
- 6.3 KB gzip React adapter
- 6.3 KB gzip Octane adapter
- zero runtime dependencies
- serializable AST
- safe defaults for raw HTML and executable URLs
- optional docs extensions and external syntax highlighting
pnpm add @tanstack/markdown
import { renderHtml } from '@tanstack/markdown/html'
const html = renderHtml('# Fast by default')
import { Markdown } from '@tanstack/markdown/react'
export function Article({ source }: { source: string }) {
return <Markdown>{source}</Markdown>
}
import { Markdown } from '@tanstack/markdown/octane'
export function Article({ source }: { source: string }) @{
<Markdown>{source}</Markdown>
}
TanStack Markdown targets controlled technical content. It supports the Markdown used by blogs and docs, then spends its remaining complexity budget on deterministic output, renderer parity, malformed-input resilience, and small entry points. It is intentionally not a complete CommonMark, GFM, MDX, or general content-processing implementation.
Documentation
Verification
pnpm run verify
To include downstream content in the corpus gate:
MARKDOWN_CORPUS_DIRS=../tanstack.com/src/blog:../tanstack.com/docs \
pnpm run test:corpus
Generated reports: