If your documents are plain ASCII this gives you nothing the original doesn't; if they aren't, it is the difference between usable Markdown and mojibake — the Windows console encoding failures are fixed, and metadata extraction and formatting survive the conversion. It also adds batch processing, so a list of URLs and file paths can go through in one pass.
A fork of the Markdownify server rebuilt around UTF-8 handling: it converts documents, media and web content to Markdown, and keeps Chinese, Japanese, Korean and other non-ASCII characters through the whole pipeline.
- Documents to Markdown — PDF, DOCX, XLSX and PPTX
- Images with their metadata, and audio with a transcription
- Web content — general pages, search results and YouTube video transcripts, from a URL
- Multilingual text that survives the round trip, including on Windows cmd.exe and PowerShell
- Error messages in English and Chinese, and fallbacks when a conversion fails part way
Node.js 16.0 or higher, Python 3.8 or higher, pnpm and Git. Build with `pnpm install` then `pnpm run build`, and point your client at `dist/index.js` with `UV_PATH` set to your uv binary. On Windows, set `PYTHONIOENCODING` to UTF-8 and run `chcp 65001` first.
Build from source — clone the repository and build it, then point your client at the binary
