← All Projects
Weave — PowerPoint Template Processor
Cross-platform desktop app (Electron + React + Python) that replaces placeholders in PowerPoint templates with data pulled from Excel cells, including image extraction.
Electron (cross-platform packaging)React UIPython backend (`python-pptx`, `openpyxl`)Placeholder syntax: `{SheetName:CellRef}` for text, `{SheetName:IMG}` for imagesVite build
⚡ Bridging the Python processing backend with the Electron ren…⚡ Handling image placeholder extraction from Excel cells (embe…⚡ Preserving original slide formatting and layouts after in-pl…
Portfolio Highlights
- →Built a cross-platform Electron/React/Python desktop app automating PowerPoint generation from Excel template data, including image and text placeholder replacement.
- →Designed a placeholder syntax and template analysis pipeline that validates substitutions before committing changes to slides.
Snapshot
- Period: September 2025
- Source: `github.com/josegibson/Weave`
- Domain: Desktop app, document automation, data-driven reporting
- Status: Public release
Stack
- Electron (cross-platform packaging)
- React UI
- Python backend (`python-pptx`, `openpyxl`)
- Placeholder syntax: `{SheetName:CellRef}` for text, `{SheetName:IMG}` for images
- Vite build
What I Built
- Template analyzer that detects all placeholders in a `.pptx` file before processing.
- Excel data extractor that reads cell values and embedded images from named sheets.
- Replacement engine that fills text and image placeholders while preserving slide layout.
- React UI wrapping the Python backend for drag-and-drop template and data-file selection.
- Electron packaging for Windows and Mac distribution without requiring Python installed.
Key Decisions
- Python backend for `.pptx`/`.xlsx` manipulation because `python-pptx` and `openpyxl` have far better library support than Node equivalents.
- Electron shell to avoid requiring end-users to manage a Python environment.