# Powerpoint

PowerPoint slide deck generation and management using python-pptx with YAML-driven...

- Repository: https://github.com/microsoft/hve-core (1591 stars)
- Category: Documents
- License: MIT
- Last updated: 2026-11-01
- Runs scripts: yes, review before use

## Install

Claude Code: `npx skills add microsoft/hve-core --skill powerpoint -g -a claude-code -y`
Codex: `npx skills add microsoft/hve-core --skill powerpoint -g -a codex -y`
Cursor: `npx skills add microsoft/hve-core --skill powerpoint -g -a cursor -y`
Gemini CLI: `npx skills add microsoft/hve-core --skill powerpoint -g -a gemini-cli -y`

## Description

PowerPoint slide deck generation and management using python-pptx with YAML-driven content and styling

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# PowerPoint Skill

Generates, updates, and manages PowerPoint slide decks using `python-pptx` with YAML-driven content and styling definitions.

## Overview

This skill provides Python scripts that consume YAML configuration files to produce PowerPoint slide decks. Each slide is defined by a `content.yaml` file describing its layout, text, and shapes. A `style.yaml` file defines dimensions, template configuration, layout mappings, metadata, and defaults.

SKILL.md covers technical reference: prerequisites, commands, script architecture, API constraints, and troubleshooting. For conventions and design rules (element positioning, visual quality, color and contrast, contextual styling), follow `pptx.instructions.md`.

## Prerequisites

### PowerShell

The `Invoke-PptxPipeline.ps1` script handles virtual environment creation and dependency installation automatically via `uv sync`. Requires `uv`, Python 3.11+, and PowerShell 7+.

### Installing uv

If `uv` is not installed, use a package manager that verifies the download against a published hash:

```bash
# Windows
winget install --id astral-sh.uv -e

# macOS / Linux (Homebrew)
brew install uv
```

To install from a release archive instead, download it from the [uv releases page](https://github.com/astral-sh/uv/releases) and check it against its `.sha256` file before extracting.

### System Dependencies (Export and Validation)

The Export and Validate actions require LibreOffice for PPTX-to-PDF conversion and optionally `pdftoppm` from poppler for PDF-to-JPG rendering. When `pdftoppm` is not available, PyMuPDF handles the image rendering.

The Validate action's vision-based checks require the GitHub Copilot CLI for model access.

```bash
# macOS
brew install --cask libreoffice
brew install poppler        # optional, provides pdftoppm

# Linux
sudo apt-get install libreoffice poppler-utils

The rest: https://github.com/microsoft/hve-core/blob/HEAD/.github/skills/experimental/powerpoint/SKILL.md
