{"repo":"rocklambros/any2md","free":true,"listed":false,"github":"https://github.com/rocklambros/any2md","clone":"git clone https://github.com/rocklambros/any2md.git","description":"Convert PDF, DOCX, HTML, and TXT files — or web pages by URL — to clean, LLM-optimized Markdown with YAML frontmatter.","language":"Python","stars":20,"topics":["cli","converter","docx","html","llm","markdown","pdf","python","security","txt"],"license":"MIT","category":"ai-agents","readme_excerpt":"any2md Convert PDFs, DOCX, HTML, URLs, and plain text into structured, machine-consumable Markdown for downstream RAG pipelines. What's new in 1.0.3 A patch release closing two regressions surfaced by audit on the v1.0.2-regenerated corpus, plus a Docling-lane reach for the v1.0.2 body-cleanup stages: - Empty-title fix : cover-page-titled documents ( # INTERNATIONAL STANDARD etc.) whose first H2 stripped to empty (markdown emphasis only, NBSP-equivalent unicode, regex span crossing into the next paragraph) emitted title: \"\" . heuristics.refine title now walks H2 lines line-by-line and skips any that strip to empty after dropping markdown emphasis. The Wikipedia-prefix strip got the same non-empty guard. - Docling-lane orphan-punctuation : lone or lines from Docling's malformed table parsing leaked through because T10 strip web fragments was text-lane-only by design. The orphan-punctuation portion is extracted into a new lane-agnostic stage strip orphan punctuation that runs on Docling output too. T10's trafilatura-specific short-fragment heuristic stays text-lane-only. - Lane-agnostic body cleanup on Docling lane : T7 dedupe toc table , T8 strip cover artifacts , and T9 strip repeated byline are now appended to the structured-lane STAGES list, so Docling output gets the same body-cleanup pass that text-lane output already had. - Double-encoded HTML entities : C8 decode html entities now loops html.unescape until output stabilizes (max 5 iterations) so &amp;amp; → &amp; → & is","default_branch":null,"files":null,"tree":[],"storefront":"/r/rocklambros","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/rocklambros/any2md/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}