Jose Gibson
← 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 renHandling image placeholder extraction from Excel cells (embePreserving 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.