TanStack Highlight is split into explicit entry points. Importing an entry point does not register languages or themes unless that entry point says it does.
| Entry point | Purpose |
|---|---|
| @tanstack/highlight | Ready-to-use highlighter with every bundled language |
| @tanstack/highlight/core | Highlighter factory, renderers, and public types with no languages |
| @tanstack/highlight/markdown | Code fence metadata and HAST helpers |
| @tanstack/highlight/remark | Remark/MDAST integration |
| @tanstack/highlight/rehype | Rehype/HAST integration |
| @tanstack/highlight/react | Framework-neutral data adapter for React components |
| @tanstack/highlight/octane | Octane component data and @octanejs/mdx integration |
| @tanstack/highlight/theme | Theme types and CSS generation |
| @tanstack/highlight/languages | Aggregate exports for every bundled language |
| @tanstack/highlight/languages/* | Individually importable language definitions |
| @tanstack/highlight/themes/* | Individually importable themes |
Use the default entry for convenience. Use core plus individual language modules when client bundle size matters.