Skip to content

myst-25/PDF-OS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PDFOS — PDF - OS (Open Source)

PDFOS Icon

A powerful, open-source PDF toolkit with an iOS-inspired interface.
Convert, edit, secure, extract, and optimize PDF files — all in one app.

DownloadTelegramFeaturesInstallation


Features

🔄 Conversion

Convert PDFs to and from 12+ formats:

  • From PDF: Images (PNG/JPEG), Word, Excel, PowerPoint, HTML, Markdown, Text, CSV, JSON, XML, PDF/A
  • To PDF: Images, HTML, Markdown

📄 Page Manipulation

  • Merge — Combine multiple PDFs
  • Split — By pages or custom ranges
  • Rotate — 90°, 180°, 270°
  • Delete / Extract — Remove or isolate pages
  • Reverse — Flip page order
  • Crop — Trim margins

✏️ Editing

  • Watermarks — Text or image overlays
  • Headers / Footers — With optional page numbers
  • Page Numbers — Multiple positions
  • Redact — Permanently black out text

🔍 Extraction

  • Text — Full OCR-quality text extraction
  • Images — Extract all embedded images
  • Tables — Structured table data
  • Metadata — Author, title, dates
  • Fonts / Links / Bookmarks / Attachments
  • Full-text Search — Find text across pages

🔒 Security

  • Encrypt — Password protect with permissions
  • Decrypt — Remove passwords
  • Permissions — Granular print/copy/modify/annotate controls
  • Check — Verify encryption status

⚡ Optimization

  • Compress — Reduce file size with quality control
  • Linearize — Optimize for web viewing
  • Downsample — Reduce image resolution
  • Repair — Fix corrupted PDFs
  • Remove Metadata — Privacy cleanup
  • Grayscale — Convert to black & white

🎨 Interface

  • iOS-inspired design (Segoe UI / SF Pro fonts)
  • Real-time CPU & RAM monitoring
  • Animated progress bars
  • Process → Save workflow
  • Dark & Light mode toggle

Installation

Download Pre-built Binary (Recommended)

Go to Releases and download for your platform:

Platform File
Windows PDFOS-Windows.tar.gz
Linux PDFOS-Linux.tar.gz
macOS PDFOS-macOS.tar.gz
Extract and run PDFOS (or PDFOS.exe on Windows).

🛠️ Experiencing Crashes or Bugs? (Debug Build)

If you encounter crashes, unresponsiveness, or unexpected errors, please download the Diagnostic Debug Build from our Developer Releases branch.

The Debug Build contains advanced C++ style Python logging, hardware telemetry profiling, and automatically transmits error logs and memory dumps heavily compressed via ZIP directly to the developer's Telegram bot in real-time to help fix the issue instantly.

Build from Source

Requirements: Python 3.10+

# Clone
git clone https://github.com/myst-25/PDF-OS.git
cd PDF-OS

# Install dependencies
pip install -r requirements.txt

# Run
python main.py

Build Standalone Executable

# Install PyInstaller
pip install pyinstaller

# Build (Windows)
python -m PyInstaller --noconfirm --onedir --windowed --name "PDFOS" \
  --icon "assets/icon.ico" \
  --add-data "core;core" --add-data "ui;ui" --add-data "utils;utils" --add-data "assets;assets" \
  --collect-all customtkinter --hidden-import psutil --hidden-import PIL._tkinter_finder \
  main.py

# Build (Linux/macOS) — use : instead of ;
python -m PyInstaller --noconfirm --onedir --windowed --name "PDFOS" \
  --add-data "core:core" --add-data "ui:ui" --add-data "utils:utils" --add-data "assets:assets" \
  --collect-all customtkinter --hidden-import psutil --hidden-import PIL._tkinter_finder \
  main.py

# Output in dist/PDFOS/

Dependencies

Package Purpose
customtkinter Modern UI framework
PyMuPDF (fitz) Core PDF engine
pypdf PDF manipulation
Pillow Image processing
pdfplumber Table extraction
pdf2docx PDF to Word
python-docx Word file creation
openpyxl Excel file creation
python-pptx PowerPoint creation
reportlab PDF generation
python-barcode Barcode support
qrcode QR code support
markdown Markdown rendering
psutil CPU/RAM monitoring

Project Structure

PDF-OS/
├── main.py                 # Entry point
├── requirements.txt        # Dependencies
├── assets/
│   ├── icon.png            # App icon
│   └── icon.ico            # Windows icon
├── core/                   # PDF processing engines
│   ├── conversion.py
│   ├── page_manipulation.py
│   ├── editing.py
│   ├── extraction.py
│   ├── security.py
│   └── optimization.py
├── ui/                     # Interface
│   ├── app.py              # Main window
│   ├── ios_widgets.py      # iOS design system
│   ├── progress_widget.py  # Animated progress bar
│   └── tabs/               # Tool panels
│       ├── conversion_ui.py
│       ├── page_manip_ui.py
│       ├── editing_ui.py
│       ├── extraction_ui.py
│       ├── security_ui.py
│       └── optimization_ui.py
├── utils/
│   ├── logger.py           # Console logging
│   └── resource_monitor.py # CPU/RAM monitor
├── .github/workflows/      # GitHub Actions CI/CD
└── .gitlab-ci.yml          # GitLab CI/CD

Contributing

  1. Fork the repo
  2. Create a feature branch (git checkout -b feature/my-feature)
  3. Commit changes (git commit -m "Add my feature")
  4. Push (git push origin feature/my-feature)
  5. Open a Pull Request

License

This project is licensed under the MIT License — see LICENSE for details.

Free for personal and commercial use.


Links


Made with ❤️ by myst-25

About

PDF tool in python3

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages