How vantunes/markdown-converter works
Markdown Converter is a Windows desktop application for turning individual documents or folders of documents into Markdown. A user selects a file or folder in the GUI; the main window delegates conversion, reports progress and errors, and previews successful output. The conversion service scans folders, preprocesses PDFs with OCR, converts documents, and measures elapsed time. The GUI also exposes dependency updates and an About dialog. The README documents supported formats and OCR integrations; some implementation modules were not excerpted, so their internal links are omitted where evidence is unavailable.
Main entry points: main_window.py Main window · conversion_service.py Conversion service · toolbar.py Toolbar · about_dialog.py About dialog
Components 18
Desktop interface
- App entry
main.py - Main window
ui/main_window.py - Toolbar
ui/toolbar.py - Progress panel
ui/progress_panel.py - Log panel
ui/log_panel.py - Markdown preview
ui/preview_panel.py - About dialog
ui/about_dialog.py
Document conversion
- Conversion service
services/conversion_service.py - Folder scanner
file_scanner.py - Document converter
converter.py - PDF OCR
services/ocr_service.py - Conversion timer
services/timer_service.py
Application support
- App settings
settings.py - Update service
services/update_service.py - Dependency updater
updater.py
Other components
- User
- OCRmyPDF
- Python package installer
Connections 22
- User → Main window: uses
README.md - App entry → Main window: starts
main.py - Main window → Toolbar: creates
ui/main_window.py - Main window → Progress panel: creates
ui/main_window.py - Main window → Log panel: creates
ui/main_window.py - Main window → Markdown preview: creates
ui/main_window.py - Main window → About dialog: opens
ui/main_window.py - Main window → App settings: reads
ui/main_window.py - Toolbar → Main window: dispatches actions
ui/main_window.py - Main window → Conversion service: calls
ui/main_window.py - Main window → Update service: calls
ui/main_window.py - Main window → Log panel: writes logs
ui/main_window.py - Main window → Progress panel: updates status
ui/main_window.py - Main window → Markdown preview: shows output
ui/main_window.py - About dialog → App settings: reads metadata
ui/about_dialog.py - Conversion service → Folder scanner: scans folder
services/conversion_service.py - Conversion service → PDF OCR: prepares PDFs
services/conversion_service.py - Conversion service → Document converter: converts document
services/conversion_service.py - Conversion service → Conversion timer: measures duration
services/conversion_service.py - PDF OCR → OCRmyPDF: runs OCR
services/ocr_service.py - Update service → Dependency updater: delegates update
services/update_service.py - Dependency updater → Python package installer: upgrades packages
updater.py