Transform structured content into professional PowerPoint presentations.
AI-powered presentation generator that converts markdown outlines, JSON structures, and documents into well-designed PPTX files.
Slideforge uses intelligent content transformation to create high-quality presentations from various input formats. Built for educators, business professionals, and anyone who needs to create presentations efficiently.
- Multiple Input Formats: Markdown, JSON outlines, plain text documents
- Smart Content Transformation: Automatically structures content for slides
- Template Support: Apply custom themes and corporate branding
- Speaker Notes: Detailed presenter notes generated automatically
- Best Practices Built-in: 6x6 rule, visual hierarchy, consistent styling
- Slide Type Variety: Title, content, comparison, image, quote slides
cd scripts
pip install -r requirements.txtFrom JSON:
cd scripts/pptx-generator
python pptx_generator.py --input content.json --output presentation.pptxWith Theme:
python pptx_generator.py -i content.json -o output.pptx -t themes/corporate.pptxfrom pptx_generator import PPTXGenerator
# Create presentation
generator = PPTXGenerator()
generator.add_title_slide("My Presentation", "Subtitle here")
generator.add_content_slide("Key Points", [
"First important point",
"Second important point",
"Third important point"
])
generator.save("output.pptx")# Presentation Title
## Introduction
### Overview
- First key point
- Second key point
- Third key point
## Main Content
### Details
- Supporting information
- Additional context{
"metadata": {
"title": "Presentation Title",
"author": "Your Name",
"date": "2024-01-01"
},
"sections": [
{
"title": "Introduction",
"slides": [
{
"type": "content",
"title": "Overview",
"content": {
"bullets": ["Point 1", "Point 2", "Point 3"]
},
"notes": "Speaker notes here..."
}
]
}
]
}| Type | Description |
|---|---|
title |
Opening slide with title and subtitle |
section_header |
Section transition slide |
content |
Standard bullet point slide |
two_content |
Two-column layout |
comparison |
Side-by-side comparison with headers |
image |
Image-focused slide |
quote |
Quote with attribution |
blank |
Empty slide for custom content |
/Slideforge/
├── CLAUDE.md # AI orchestration guide
├── README.md # This file
├── agents/ # AI agent specifications
├── scripts/
│ └── pptx-generator/ # Core generation module
├── schemas/
│ └── presentation/ # JSON schemas
├── templates/
│ └── pptx/ # Theme templates
├── inputs/ # Source content
└── exports/ # Generated presentations
Slideforge follows presentation best practices:
- 6x6 Rule: Maximum 6 bullet points per slide, 6 words per bullet
- One Idea Per Slide: Focus on a single concept
- Visual Hierarchy: Clear titles and logical flow
- Speaker Notes: Detailed notes for presenters
- Consistent Styling: Uniform layouts throughout
- Getting Started - Quick start guide
- Workflow Reference - Detailed protocols
- Slide Design Guide - Design best practices
python-pptx>=0.6.21
Pillow>=9.0.0
beautifulsoup4>=4.9.0
jsonschema>=4.0.0
MIT License - See LICENSE file for details.
Contributions welcome! Please read our contributing guidelines before submitting PRs.