|
1 | | -# markitdown-app |
| 1 | +# MarkItDown Desktop |
| 2 | + |
| 3 | +Cross-platform desktop GUI for [microsoft/markitdown](https://github.com/microsoft/markitdown) — convert PDF, Word, Excel, PowerPoint, images, audio, and more to Markdown. |
| 4 | + |
| 5 | +## Features |
| 6 | + |
| 7 | +- **Batch conversion** — add multiple files and convert them all at once |
| 8 | +- **URL support** — paste YouTube or webpage URLs for conversion |
| 9 | +- **Live preview** — view converted Markdown output instantly |
| 10 | +- **Copy / Save / Save All** — export results with one click |
| 11 | +- **Dark & Light themes** — toggle between dark, light, and system themes |
| 12 | +- **Cross-platform** — runs on Windows, Linux, and macOS |
| 13 | +- **Lightweight** — built with CustomTkinter, no browser engine |
| 14 | + |
| 15 | +## Supported Formats |
| 16 | + |
| 17 | +| Category | Extensions | |
| 18 | +|----------|-----------| |
| 19 | +| Documents | PDF, DOCX, PPTX, XLSX, XLS, EPUB | |
| 20 | +| Images | JPG, PNG, GIF, BMP, TIFF | |
| 21 | +| Audio | WAV, MP3 | |
| 22 | +| Web | HTML, RSS, YouTube URLs | |
| 23 | +| Data | CSV, JSON, XML | |
| 24 | +| Other | ZIP, Outlook MSG | |
| 25 | + |
| 26 | +## Download |
| 27 | + |
| 28 | +Go to [Releases](../../releases) and download the binary for your platform: |
| 29 | + |
| 30 | +| Platform | File | |
| 31 | +|----------|------| |
| 32 | +| Windows | `MarkItDown-Windows.exe` | |
| 33 | +| Linux | `MarkItDown-Linux` | |
| 34 | +| macOS | `MarkItDown-macOS` | |
| 35 | + |
| 36 | +## Run from Source |
| 37 | + |
| 38 | +Requires Python 3.10+. |
| 39 | + |
| 40 | +```bash |
| 41 | +pip install -r requirements.txt |
| 42 | +python run.py |
| 43 | +``` |
| 44 | + |
| 45 | +## Keyboard Shortcuts |
| 46 | + |
| 47 | +| Shortcut | Action | |
| 48 | +|----------|--------| |
| 49 | +| Ctrl+O | Add files | |
| 50 | +| Ctrl+S | Save current output | |
| 51 | +| Ctrl+Shift+S | Save all outputs | |
| 52 | + |
| 53 | +## How It Works |
| 54 | + |
| 55 | +1. Click **Add Files** (or Ctrl+O) to select files for conversion |
| 56 | +2. Optionally click **Add URL** to add YouTube or webpage URLs |
| 57 | +3. Click **Convert** to process all files in background threads |
| 58 | +4. Click on any file in the list to view its output |
| 59 | +5. Use **Copy**, **Save**, or **Save All** to export |
| 60 | + |
| 61 | +## Build Executable |
| 62 | + |
| 63 | +```bash |
| 64 | +pip install pyinstaller |
| 65 | +pyinstaller --onefile --windowed \ |
| 66 | + --collect-data customtkinter \ |
| 67 | + --collect-data magika \ |
| 68 | + --name MarkItDown \ |
| 69 | + run.py |
| 70 | +``` |
| 71 | + |
| 72 | +The executable will be in the `dist/` folder. |
| 73 | + |
| 74 | +## Auto-Release |
| 75 | + |
| 76 | +Push a version tag to trigger automated builds for all platforms: |
| 77 | + |
| 78 | +```bash |
| 79 | +git tag v1.0.0 |
| 80 | +git push origin v1.0.0 |
| 81 | +``` |
| 82 | + |
| 83 | +GitHub Actions will build executables for Windows, Linux, and macOS and attach them to a GitHub Release. |
| 84 | + |
| 85 | +## License |
| 86 | + |
| 87 | +MIT |
0 commit comments