the compiled markdown stack
Parse once.
Plugin the rest.
Same shape as the Claude.ai transcript pipeline, all LilScript:
unified → remark-parse → remark-gfm →
remark-breaks → remark-math → remark-rehype →
rehype-katex → rehype-stringify.
The live stack on this page
8packages
Zero runtime npm deps. Each plugin is a sibling @itslil package.
GFMtables · tasks · strike
breakssoft newlines to br
math$ and $$ to nodes
KaTeXcompiled subset HTML
This page vendors sibling ESM so GitHub Pages can run the whole pipeline without npm.
unified ✦ remark-parse ✦ remark-gfm ✦ remark-breaks ✦ remark-math ✦ remark-rehype ✦ rehype-katex ✦ rehype-stringify
The compiled stack, in the browser
Full
pipeline.
Left is markdown. Right is HTML after every plugin. KaTeX CSS is from jsDelivr; the renderer is @itslil/katex.