FrankenMarkdown: A Zero-Dependency Rust Markdown Engine
FrankenMarkdown v0.3.0 is a zero-dependency Rust engine rendering Markdown into byte-identical HTML and PDF, running natively and via WASM in the browser.
FrankenMarkdown has reached v0.3.0 on crates.io, a Rust engine that converts Markdown into both HTML and PDF. Its defining trait is that every component—parser, syntax highlighter, font reader, PDF writer—is hand-built in-house, with zero third-party crates outside the CLI, enforced by a CI policy gate. The same parse tree drives both the native binary and a WebAssembly build running in the browser, and CI checks that the two outputs are byte-for-byte identical.
On the PDF side, the engine applies Knuth–Plass optimal line breaking, Liang hyphenation, real font metrics, kerning and ligatures for LaTeX-grade typesetting. Fonts are subsetted to include only the glyphs actually used in a document, keeping file sizes small without sacrificing typographic quality. Deterministic output—identical bytes for identical input and options—makes the tool well suited for reproducible builds and caching.
CommonMark conformance currently sits at 379 of 652 examples (~64%), a floor that is ratcheted upward in CI; raw HTML passthrough is intentionally out of scope. Areas like PDF pagination and SVG support are still maturing, and the maintainers are explicit about these gaps. An agent-friendly CLI (with JSON-emitting capabilities, doctor and robot-docs commands) and serverless document sharing via URL fragments round out a toolchain aimed at both human and automated workflows.