Back to Projects
SlideForge
Production-ready CLI tool to convert HTML slides to PowerPoint, PDF, or PNG with perfect styling preservation
PythonPlaywrightWeasyPrintChromiumCLI
The Problem
Converting web content to presentations is tedious. Existing tools lose formatting, fonts, and layouts. Need a reliable way to forge HTML slides into multiple formats.
The Approach
Built a Python CLI tool with:
Core Features:
- Perfect rendering - preserves all fonts, styles, layouts
- Smart dependencies - auto-detects and installs missing packages
- Two methods - Playwright (best quality) or WeasyPrint (pure Python)
- Template generation - creates starter HTML slides
- Robust error handling - gracefully handles edge cases
Advanced Features:
- Range selection - convert specific slides (e.g., 1-5 or 1,3,5)
- Dry run - preview conversion without creating files
- Watch mode - auto-convert when files change
- Parallel processing - up to 4x faster with multi-threading
- Format conversion - PDF↔PPT↔PNG
- PNG export - each PDF page as high-res PNG (300 DPI)
The Impact
Production-ready tool used for automated report generation. Cross-platform support (macOS, Linux, Windows). Open-sourced under MIT license.
Build Notes
Key Features:
- 🎨 Perfect Rendering - Preserves all visual design
- 🤖 Smart Dependencies - Auto-installs missing packages
- 🚀 Two Methods - Playwright or WeasyPrint
- 🔢 Smart Sorting - Correct numerical ordering
- ⚡ Parallel Processing - Up to 4x faster
- 🔄 Format Conversion - PDF↔PPT↔PNG
- 👀 Watch Mode - Auto-convert on file changes
Method Comparison:
| Feature | Playwright | WeasyPrint |
|---|---|---|
| PDF Quality | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐ |
| Google Fonts | Full | Limited |
| Complex CSS | Full | Partial |