██████╗ █████╗ ██████╗ ██╗ ██╗██████╗ ██╗ ██╗███████╗
██╔══██╗██╔══██╗██╔══██╗╚██╗ ██╔╝██╔══██╗██║ ██║██╔════╝
██████╔╝███████║██████╔╝ ╚████╔╝ ██████╔╝██║ ██║███████╗
██╔═══╝ ██╔══██║██╔═══╝ ╚██╔╝ ██╔══██╝██║ ██║╚════██║
██║ ██║ ██║██║ ██║ ██║ ██║╚██████╔╝███████║
╚═╝ ╚═╝ ╚═╝╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═════╝ ╚══════╝
Smart PDF Converter for macOS Paste a URL, HTML, or plain text → Click Export PDF → Done.
Papyrus automatically detects what you paste:
| You Paste | What Happens |
|---|---|
<<<<<<<<<<https://example.com>>>>>>>>>> |
Fetches page → Extracts content → Generates PDF |
<html>...</html> |
Renders HTML → Generates PDF |
Plain text... |
Formats nicely → Generates PDF |
- Paste any URL and click Export PDF
- Reader Mode extracts clean article content (like Safari Reader)
- Removes ads, navigation, and clutter automatically
- Portrait/Landscape orientation toggle
- US Letter size (8.5" × 11")
- Backgrounds preserved in PDF output
- Auto-generated filename with date
- Stunning dark theme with animated gradient background
- Syntax highlighting for HTML (Dracula theme)
- Live preview panel
- Glow effects on buttons
- 📝 Plain Text Support – Paste any text, get a formatted PDF
- 🖱️ Drag & Drop – Drop HTML files directly
- 💾 Save/Open – Save and open HTML files
- 🍎 Apple Silicon Native – Optimized for M1/M2/M3/M4
-
Download the latest
Papyrus.dmgfrom -
Drag
Papyrus.appto/Applications -
First Launch (if prompted with "App is damaged"):
sudo xattr -cr /Applications/Papyrus.appIt's simple:
- Paste – URL, HTML, or plain text
- Click – Export PDF
- Done – PDF saves automatically
That's it. No buttons to figure out. Papyrus detects what you pasted and handles everything.
- Python 3.13+
- macOS 10.13+
git clone <<<<<<<<<<https://github.com/RazorBackRoar/Papyrus.git>>>>>>>>>>
cd Papyrus
## Install dependencies
pip install -r requirements.txt
## Install Playwright browser (for advanced rendering)
playwright install chromium
## Run the app
PYTHONPATH=src python -m papyrus.main| Package | Purpose |
|---|---|
PySide6 |
Qt6 GUI framework |
weasyprint |
PDF generation engine |
readability-lxml |
Reader Mode article extraction |
beautifulsoup4 |
HTML parsing |
## Using razorbuild tools
razorbuild Papyrus
## Creates: build/dist/Papyrus.dmgPapyrus/
├── src/papyrus/
│ ├── core/
│ │ └── app.py # Main application (Smart Input System)
│ ├── utils/
│ │ └── helpers.py # Utility functions
│ └── main.py # Entry point
├── assets/
│ ├── papyrus.png # App logo
│ └── icons/ # App icons
├── requirements.txt # Python dependencies
└── Papyrus.spec # PyInstaller config
User pastes content
↓
Clicks "Export PDF"
↓
System detects content type:
↓
┌─────────────────────────────────────┐
│ URL? (starts with http/https) │──→ Fetch → Reader Mode → PDF
├─────────────────────────────────────┤
│ HTML? (contains <tags>) │──→ Render directly → PDF
├─────────────────────────────────────┤
│ Plain text? │──→ Wrap in template → PDF
└─────────────────────────────────────┘
- WeasyPrint – Converts HTML to PDF with full CSS support
- Readability – Extracts article content from web pages
- PySide6 – Native macOS Qt6 interface
- PyInstaller – Bundles into standalone .app
MIT License - see LICENSE for details.
Copyright © 2026 RazorBackRoar