A production-ready, modern Windows desktop application for Microsoft MarkItDown, built with Python, PyQt6, and the Fluent Design system (via qfluentwidgets).
This tool allows you to convert complex documents (PDF, Word, Excel, PowerPoint, etc.) into clean, high-fidelity Markdown files with advanced handling for tables and images.
- Fluent Design UI: A sleek, Windows 11-style dark mode interface.
- Smart Table Recovery: Custom-tuned logic to preserve complex multi-column tables as readable text blocks instead of broken layouts.
- Hybrid Image Management:
- Small images (<50KB) are embedded as Base64 within the Markdown file.
- Large images are automatically extracted to a dedicated
[filename]_assetsfolder.
- Automatic Language Detection: Detects your Windows system language and adapts the UI (Supports English, Turkish, Spanish, French, German, and Chinese).
- Audio Transcription: Convert MP3/WAV files to text using built-in speech recognition (requires FFmpeg).
- Asynchronous Processing: Non-blocking file conversions with real-time UI logging and progress tracking.
- Documents: PDF, DOCX, XLSX, PPTX
- Data: CSV, JSON, XML
- Web: HTML, RSS, Wikipedia, YouTube (transcripts)
- Multimedia: MP3, WAV (Audio), JPG, PNG (OCR)
- Archives: ZIP, EPUB
- Python 3.10+
- FFmpeg (Required for audio files):
winget install ffmpeg
- Clone the repository:
git clone https://github.com/omererman/markitdown-desktop.git cd markitdown-desktop - Create a virtual environment:
python -m venv venv .\venv\Scripts\activate
- Install dependencies:
pip install -r requirements.txt pip install -e "./packages/markitdown[all]" - Run the app:
.\run_gui.bat
To generate a standalone executable for Windows:
.\build_exe.batThe resulting file will be in the dist/ directory.
Developed by OMER ERMAN.
Powered by Microsoft MarkItDown and PyQt6-Fluent-Widgets.
This project is licensed under the MIT License - see the LICENSE file for details.
