Rust · Document processing
pdfmd
A fast PDF-to-Markdown engine in Rust, built without dependencies.

What I built
I built a zero-dependency PDF-to-Markdown converter, including the PDF parser, DEFLATE decoder, and layout reconstruction.
- Implemented the PDF reader, zlib/DEFLATE decoder, font decoding, and content-stream interpretation directly in Rust.
- Reconstructed Markdown from positioned text, including headings, columns, lists, and tables; exposed the engine through a CLI and Python bindings.
- Documented performance and text-fidelity benchmarks. Complex layouts and table reconstruction remain best-effort.
$ pdfmd paper.pdf -o paper.md
PDF bytes → objects & streams
→ fonts & positioned text
→ headings, tables, Markdown