About Markdown Tools
Your documents, tables, and notes are processed locally in your browser and never uploaded.
How it works
Every tool on this site is plain JavaScript running in your browser. The markdown renderer is hand-rolled and deterministic — tables, front matter, TOC anchors, and stats are pure string operations. There is no backend, no database, and no account — the page you load is the entire product.
The site enforces this with a strict Content-Security-Policy (connect-src 'self'): the browser itself refuses every outbound network connection, so uploads are not just discouraged — they are impossible.
Why a hand-rolled renderer
Markdown rendering needs no dependencies. This site implements the CommonMark/GFM constructs writers actually use — headings, emphasis, lists, tables, code, quotes, links — as one deterministic pass of pure TypeScript. That keeps the download tiny, the output byte-stable (the same document always renders identical HTML), and the attack surface at zero third-party code.
Honest limits
- The renderer covers the CommonMark/GFM essentials, not every spec edge case (footnotes, definition lists, raw HTML blocks are escaped rather than passed through — safer by default).
- The front-matter validator implements the flat-mapping subset real posts use, not full YAML (anchors and multi-document streams are flagged as unsupported).
- Nothing is saved server-side — your draft lives in the page. Copy or download before closing the tab.