Programmatic PowerPoint creation via PptxGenJS with data-driven slides and Markdown conversion
Domain: Presentation Generation
Purpose: Programmatic PowerPoint creation via PptxGenJS
Expertise: Data-driven slides, Markdown conversion, Alex brand templates
| Capability | Description |
|---|---|
| Markdown → PPTX | Convert .md files to branded presentations |
| Data-Driven Slides | Generate charts/tables from JSON data |
| Template System | Alex brand Slide Masters (title, content, section, chart) |
| Multi-Format Export | File output or base64 for web delivery |
| Type | Use Case | Data Shape |
|---|---|---|
title | Opening slide with main title + subtitle | { title, subtitle?, notes? } |
content | Bullet list slide | { title, bullets[], notes? } |
section | Section divider | { title, subtitle? } |
chart | Data visualization | { chartType, series[], title? } |
table | Tabular data | { headers[], rows[][] } |
image | Image slide | { path|base64, caption? } |
twoColumn | Side-by-side content | { left: {title, bullets}, right: {title, bullets} } |
bar — Category comparisonline — Trend over timepie — Part-of-whole (use ≤6 segments)doughnut — Pie variant with center holearea — Volume over timescatter — Correlation analysis| Name | Fill | Text | Border |
|---|---|---|---|
| Blue | ddf4ff | 0550ae | 80ccff |
| Green | d3f5db | 1a7f37 | 6fdd8b |
| Purple | d8b9ff | 6639ba | bf8aff |
| Gold | fff8c5 | 9a6700 | d4a72c |
| Gray | eaeef2 | 24292f | afb8c1 |
# Quarterly Review
## Executive Summary
---
# Q4 2024 Results
## Performance Overview
- Revenue up 23% YoY
- Customer acquisition: 1,200 new accounts
- NPS improved from 45 to 62
> Speaker notes: Highlight the NPS improvement as key win
---
## Next Quarter [section]
Focus areas for Q1 2025
---
# Strategic Priorities
- Expand enterprise segment
- Launch self-serve tier
- Hire 15 engineers
import { generateAndSavePresentation, SlideContent } from './pptxGenerator';
const slides: SlideContent[] = [
{ type: 'title', title: 'Q4 Review', subtitle: 'Performance & Strategy' },
{ type: 'content', title: 'Highlights', bullets: ['Revenue +23%', 'NPS 62'] },
{ type: 'chart', title: 'Revenue Trend', data: {
chartType: 'line',
series: [{ name: 'Revenue', labels: ['Q1','Q2','Q3','Q4'], values: [100,120,115,146] }]
}}
];
await generateAndSavePresentation(slides, { title: 'Q4 Review' }, 'review.pptx');
# From markdown
npx ts-node .github/muscles/pptxgen-cli.ts --input slides.md --output deck.pptx
# Quick content
npx ts-node .github/muscles/pptxgen-cli.ts --content "Welcome to Alex|Point 1|Point 2" -o quick.pptx
| Integration | Description |
|---|---|
| Chat command | /pptx <topic> to generate slides from topic |
| Memory export | Convert episodic memories to slides |
| Skill output | Any skill can request PPTX output |
| Data connectors | Azure SQL / Power BI → charts |