@tanstack/markdown
Version:
A tiny, fast, deterministic Markdown renderer for blogs and documentation.
89 lines (66 loc) • 2.83 kB
Markdown
# TanStack Markdown
A tiny, fast, deterministic Markdown parser and renderer for blogs and documentation.
- 4.9 KB gzip parser
- 6.7 KB gzip HTML renderer
- 6.7 KB gzip React adapter
- 6.7 KB gzip Octane adapter
- zero runtime dependencies
- serializable AST
- safe defaults for raw HTML and executable URLs
- optional docs extensions and external syntax highlighting
- optional AI streaming profile
```bash
pnpm add @tanstack/markdown
```
If you use an AI agent, run `npx @tanstack/intent@latest install` so it can discover the package's task-specific skills.
```ts
import { renderHtml } from '@tanstack/markdown/html'
const html = renderHtml('# Fast by default')
```
```tsx
import { Markdown } from '@tanstack/markdown/react'
export function Article({ source }: { source: string }) {
return <Markdown>{source}</Markdown>
}
```
```tsrx
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.
For syntax highlighting, use the tested [TanStack Highlight adapter](./docs/guides/syntax-highlighting.md#tanstack-highlight-adapter). It registers only the languages you choose and returns escaped token markup inside Markdown-owned code containers.
## Documentation
- [Overview](./docs/overview.md)
- [Installation](./docs/installation.md)
- [Quick Start](./docs/quick-start.md)
- [Comparison](./docs/comparison.md)
- [Syntax Profile](./docs/core-concepts/syntax-profile.md)
- [React Guide](./docs/guides/react.md)
- [Octane Guide](./docs/guides/octane.md)
- [AI Streaming](./docs/guides/ai-streaming.md)
- [Syntax Highlighting](./docs/guides/syntax-highlighting.md)
- [Extensions](./docs/guides/extensions.md)
- [API Reference](./docs/reference/index.md)
- [Architecture](./docs/project/architecture.md)
## Verification
```bash
pnpm run verify
```
To include downstream content in the corpus gate:
```bash
MARKDOWN_CORPUS_DIRS=../tanstack.com/src/blog:../tanstack.com/docs \
pnpm run test:corpus
```
To audit practical compatibility across local TanStack repositories and a pinned external docs/blog sample:
```bash
pnpm run corpus:audit:tanstack
pnpm run corpus:audit:external
```
Generated reports:
- [Bundle sizes](./reports/sizes.md)
- [Benchmarks](./reports/benchmarks.md)
- [CommonMark compatibility accounting](./reports/conformance.md)
- [TanStack repository corpus](./reports/tanstack-corpus.md)
- [External docs and blogs corpus](./reports/external-corpus.md)