anydoc is a fast Rust library for converting office documents and publications into clean GitHub-Flavored Markdown. It supports Word, PowerPoint, Excel, OpenDocument, RTF, EPUB, CSV, and text-based PDF files through one shared document model. The converter preserves headings, formatting, links, lists, tables, notes, footnotes, internal references, and embedded asset metadata. Content-based detection identifies most formats from their bytes, even when filenames or extensions are incorrect. The core runs locally without machine-learning models or external services and typically converts documents in milliseconds. Developers can use it through Rust, Node.js, Python, browser WebAssembly, or a command-line interface. It also ships as an Agent Skill so compatible coding agents can read mixed office documents.
Features
- Multi-format document-to-Markdown conversion
- Shared structured document model
- Content-based file format detection
- Preserved tables, notes, links, and formatting
- Rust, Node.js, Python, WebAssembly, and CLI APIs
- Agent Skill integration for coding assistants