Automatically generate engaging presenter notes for PowerPoint slides using AI.
- Takes a PowerPoint file as input
- Screenshots each slide and sends it to an AI model (via OpenRouter)
- Generates teacher-friendly presenter notes with hooks, key points, and engagement tips
- Adds the notes directly into the PowerPoint file
- Windows (uses PowerPoint COM automation)
- Microsoft PowerPoint installed
- Python 3.8+
- OpenRouter API key (free tier available)
-
Clone the repository
git clone https://github.com/Afzal632/PPT-Notes-maker.git cd PPT-Notes-maker -
Create virtual environment
python -m venv .venv .venv\Scripts\activate
-
Install dependencies
pip install -r requirements.txt
-
Get OpenRouter API key
- Go to https://openrouter.ai/keys
- Sign up and create an API key (free credits included)
-
Configure API key
- Copy
config.env.exampletoconfig.env - Add your API key:
OPENROUTER_API_KEY=your_api_key_here
- Copy
# Process all slides
python add_notes.py "presentation.pptx"
# Process specific range
python add_notes.py "presentation.pptx" 5-20
# Process specific slides
python add_notes.py "presentation.pptx" 1,3,5-10Edit prompt.txt to change how the AI generates notes. The default prompt creates notes with:
- Opening hooks to grab attention
- Key points with examples/analogies
- Engagement moments (questions, activities)
- Transition hints
- Opens PowerPoint via COM automation
- Exports each slide as a PNG image
- Sends each image to the AI model via OpenRouter API
- Receives generated presenter notes
- Adds notes to the slide's notes section
- Saves after each slide (progress is never lost)
- The script modifies the original PowerPoint file
- Make a backup if needed before running
- Progress is saved after each slide, so you can resume if interrupted