ShellPDF is a Windows desktop application for converting Microsoft Office and LibreOffice documents to PDF in batch. It features multithreaded queue processing, Windows Explorer context menu integration, and headless CLI capabilities.
- Native Microsoft Office COM automation for Word, PowerPoint, and Excel documents.
- Headless LibreOffice CLI fallback when Microsoft Office is not available.
- Multithreaded conversion queue with real-time progress metrics and ETA estimation.
- Windows Explorer context menu integration for right-click conversion.
- Single-instance IPC architecture to prevent duplicate window creation.
- CustomTkinter dark and light mode interface supporting dynamic system theme synchronization.
- Persistent conversion history and diagnostic logging.
| Application | Input Extensions | Output Format |
|---|---|---|
| Microsoft Word | .doc, .docx, .docm |
.pdf |
| Microsoft PowerPoint | .ppt, .pptx, .pps, .ppsx |
.pdf |
| Microsoft Excel | .xls, .xlsx, .xlsm |
.pdf |
| OpenDocument / Rich Text | .odt, .ods, .odp, .rtf |
.pdf |
- Download
ShellPDF-Setup-v1.0.0.exefrom the Releases section. - Run the setup wizard to install the application, shortcuts, and Explorer context menu.
- Download
ShellPDF-v1.0.0-Portable.zip. - Extract the archive to any local folder and run
ShellPDF.exe.
- Click Add Files or Add Folder to populate the conversion queue.
- Click Start Conversion to process all queued documents.
- Click Open Output Folder to access converted PDF files.
- Right-click any supported file or group of files in Windows Explorer.
- Select Convert to PDF with ShellPDF.
- Selected files will automatically load into the running application queue.
- Drag supported document files directly from Windows Explorer into the application window.
# Convert a single document
ShellPDF.exe document.docx
# Convert multiple files using wildcards
ShellPDF.exe *.pptx
# Convert folder contents in headless mode
ShellPDF.exe --headless folder/*
# Register Windows Explorer context menu
ShellPDF.exe --register-context-menu
# Unregister Windows Explorer context menu
ShellPDF.exe --unregister-context-menu- Windows 10 or Windows 11
- Python 3.13 or newer
- Microsoft Office or LibreOffice
- Clone the repository:
git clone https://github.com/ShellPDF/ShellPDF.git cd ShellPDF
- Install Python dependencies:
pip install -r requirements.txt - Run unit tests:
python -c "import unittest, sys; suite = unittest.defaultTestLoader.discover('tests'); res = unittest.TextTestRunner(stream=sys.stdout).run(suite); sys.exit(0 if res.wasSuccessful() else 1)"
- Build standalone executable and release packages:
python release.py
- Add PDF password protection options.
- Add page range selection for document exports.
- Add CLI progress output options.
- Fork the repository.
- Create a feature branch (
git checkout -b feature/improvement). - Commit your changes (
git commit -m "Add feature"). - Push to the branch (
git push origin feature/improvement). - Open a Pull Request.
This project is licensed under the MIT License. See LICENSE for details.


