https://github.com/wenkil/ppt-parse-analyzer-skill
Parse PPTX files into a lossless OpenXML workspace and analyze reusable template design systems (themes, layouts, typography, assets, and structure).
https://github.com/wenkil/ppt-parse-analyzer-skill
pptx-parser pptx-to-openxml slide-analysis
Last synced: 19 days ago
JSON representation
Parse PPTX files into a lossless OpenXML workspace and analyze reusable template design systems (themes, layouts, typography, assets, and structure).
- Host: GitHub
- URL: https://github.com/wenkil/ppt-parse-analyzer-skill
- Owner: wenkil
- License: mit
- Created: 2026-05-06T06:30:27.000Z (about 2 months ago)
- Default Branch: main
- Last Pushed: 2026-05-06T06:45:16.000Z (about 2 months ago)
- Last Synced: 2026-05-06T08:42:11.410Z (about 2 months ago)
- Topics: pptx-parser, pptx-to-openxml, slide-analysis
- Language: JavaScript
- Homepage:
- Size: 17.6 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# PPT Parse Analyzer Skill
A two-stage PowerPoint toolkit: lossless PPTX extraction first, template intelligence second.
## Overview
This repository provides an open-source workflow for PowerPoint template analysis.
It first unpacks a `.pptx` file into a lossless OpenXML-oriented workspace with
structured indexes, then analyzes that parsed result to generate reusable design
insights such as theme colors, typography, layout systems, placeholders, media
usage, and slide patterns.
## Repository Structure
- `ppt-parser/`: Parses PPTX archives into a deterministic analysis workspace.
- `ppt-template-analyzer/`: Analyzes parsed output and generates template reports.
## Workflow
1. Run `ppt-parser` on a `.pptx` file.
2. Review parser outputs (`manifest`, `summary`, `raw/` extraction).
3. Run `ppt-template-analyzer` on the parsed output directory.
4. Review generated Markdown and JSON reports.
## Quick Start
Run commands from each skill directory.
### 1) Parse PPTX
```bash
node scripts/parse_pptx.js
```
Parser output directory naming convention:
```text
_/
```
### 2) Analyze Template
```bash
node scripts/analyze_template.js [report-output.md|analysis-output.json]
```
If output names are omitted, analyzer defaults to:
```text
__template_report.md
__template_report.json
```
## Output Contract
The parsed directory should include:
```text
_/
__manifest.json
__summary.json
__summary.txt
raw/
[Content_Types].xml
_rels/.rels
ppt/
presentation.xml
_rels/presentation.xml.rels
slides/
slides/_rels/
slideLayouts/
slideLayouts/_rels/
slideMasters/
slideMasters/_rels/
theme/
charts/
diagrams/
notesSlides/
media/
images/
media/
```
Key guarantees:
- `raw/` preserves archive internal paths exactly, including `_rels`.
- `manifest.json` is machine-focused indexing metadata.
- `summary.json` is lightweight analysis handoff data.
- `images/` and `media/` are convenience copies; `raw/ppt/media/` is source of truth.
## Scope and Boundaries
- The parser focuses on extraction and indexing, not design interpretation.
- The analyzer provides structured template heuristics, not final visual judgment.
- XML relationships (`.rels`) should be treated as authoritative linkage data.
## License
Add your preferred open-source license (for example, MIT) before publishing.