Practical overview
When it fits
Use it as a starting point when you want a scheduled, repository-based pipeline for turning planned course lessons into YouTube videos and Shorts.
Who it is for
- Developers adapting an automated educational-video production workflow.
- Creators who want a code-based pipeline for generating and publishing lessons in widescreen and Shorts formats.
Documented uses
- Select the next pending lesson from a content plan.
- Generate a multi-slide lesson script and short-form summary with Gemini.
- Add speech narration and Pexels imagery, then render video formats and thumbnails.
- Upload videos and metadata to YouTube and mark the lesson complete in the repository.
Requirements & limits
- The documented implementation uses Python 3.11 and runs through GitHub Actions, with a local main.py entry point also listed.
- The workflow relies on Gemini 2.5 Flash, gTTS, Pexels, MoviePy, FFmpeg, Pillow, ImageMagick and YouTube Data API v3.
- GitHub Actions setup requires Gemini and Pexels API keys plus YouTube OAuth files encoded as secrets.
- The README describes a daily schedule at 7:00 AM UTC.
Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.
Prepare the repository for a GitHub Actions run
Set up the documented repository dependencies and credentials for the scheduled workflow.
Before you start
- Python project repository
- Gemini API key from Google AI Studio
- Pexels API key
- YouTube OAuth client_secrets.json and credentials.json, encoded in base64
Steps
Clone the repository and change into its directory.
Install dependencies with pip install -r requirements.txt.
Add GOOGLE_API_KEY, PEXELS_API_KEY, CLIENT_SECRET_B64 and CREDENTIALS_B64 under GitHub Settings → Secrets and variables → Actions.
Expected outcome
The documented repository and GitHub Actions secrets are in place for the scheduled pipeline.
Guide limitations
- The setup instructions do not describe authorization troubleshooting or verify that a run will complete.
- The README separately documents a local entry point, python main.py.
Sources & review
Source record details
- Source availability
- Active
- Sources checked
- 18 October 2026
- Original website title
- ChaitanyaEswarRajeshJakki/gemini-youtube-automation · Official homepage title · retained in its source language

