Python

gemini-youtube-automation

A fully autonomous AI Agent/Python pipeline that utilizes Large Language Models (LLMs) like Gemini to generate content, produce videos, and automatically upload educational videos to YouTube.

C

ChaitanyaEswarRajeshJakki

Dernière activité 28 sept. 2026
ChaitanyaEswarRajeshJakki/gemini-youtube-automation

351

étoiles

170

forks

0

issues ouvertes

ai-course-creatorai-video-generatorautonomous-agentsgenerative-aiimage-generationllmmoviepypythontext-to-speechttsvideo-automationyoutube-automation

Ce README est souvent en anglais.

🤖 Gemini YouTube Automation

A fully autonomous AI bot that writes, produces, and uploads YouTube lessons daily — zero human input required.

Daily Pipeline Python 3.11 Gemini 2.5 Stars Last Commit License

📺 Watch the Generated Videos on YouTube


Demo

Demo — AI-generated lesson video

Watch on YouTube


What It Does

Every day at 7:00 AM UTC, this bot runs entirely on GitHub Actions and:

  1. Reads the content plan to pick the next pending lesson
  2. Writes a full multi-slide script using Gemini 2.5 Flash
  3. Generates narration audio (gTTS) and fetches Pexels background imagery
  4. Renders a professional slide-based video (1920×1080) with background music
  5. Renders a vertical YouTube Short (1080×1920) from the same lesson
  6. Creates a custom thumbnail for each format
  7. Uploads both videos to YouTube with titles, descriptions, and hashtags
  8. Updates content_plan.json and commits it back to the repo

No local machine. No manual steps. Every video in the channel was made by this pipeline.


How It Works

GitHub Actions Scheduler (7 AM UTC)
          │
          ▼
  ┌───────────────────┐
  │  content_plan.json │  ◄── picks next "pending" lesson
  └────────┬──────────┘
           │
           ▼
  ┌─────────────────────────────────┐
  │  Gemini 2.5 Flash               │
  │  • 7–8 slide lesson script      │
  │  • 1-sentence YouTube Short     │
  │  • hashtags + metadata          │
  └────────┬────────────────────────┘
           │
           ▼
  ┌──────────────────────────────────────┐
  │  Video Renderer (MoviePy + PIL)      │
  │  • gTTS narration per slide          │
  │  • Pexels background images          │
  │  • Background music mix              │
  │  • Long-form (16:9) + Short (9:16)   │
  └────────┬─────────────────────────────┘
           │
           ▼
  ┌────────────────────────┐
  │  YouTube Data API v3   │  ◄── uploads with thumbnails
  └────────┬───────────────┘
           │
           ▼
  ┌────────────────────────┐
  │  git commit + push     │  ◄── marks lesson "complete"
  └────────────────────────┘

Features

  • Zero-touch operation — fully autonomous, runs on a cron schedule
  • Dual-format output — long-form lesson video AND a YouTube Short per day
  • AI-generated curriculum — Gemini creates and extends the course plan automatically
  • Dynamic visuals — Pexels stock imagery matched to each slide topic
  • Professional audio — per-slide narration with soft background music
  • Custom thumbnails — auto-generated for every video
  • Self-updating repo — content plan committed back after each successful run
  • GitHub Actions native — no server, no hosting cost, just free CI runners

Tech Stack

Component Technology
AI Script Generation Google Gemini 2.5 Flash
Text-to-Speech gTTS
Video Rendering MoviePy + FFmpeg
Image Generation Pillow (PIL) + ImageMagick
Stock Footage Pexels API
YouTube Upload YouTube Data API v3
Automation GitHub Actions

Setup

1. Clone the repo

git clone https://github.com/ChaitanyaEswarRajeshJakki/gemini-youtube-automation.git
cd gemini-youtube-automation

2. Install dependencies

pip install -r requirements.txt

3. Configure GitHub Secrets

Go to Settings → Secrets and variables → Actions and add:

Secret Description
GOOGLE_API_KEY Gemini API key from Google AI Studio
PEXELS_API_KEY Pexels API key
CLIENT_SECRET_B64 YouTube OAuth client_secrets.json encoded in base64
CREDENTIALS_B64 YouTube OAuth credentials.json encoded in base64

4. Run locally

python main.py

Content Progress

The bot is currently producing the "AI for Developers" series — a beginner-friendly course that takes developers from zero to advanced AI.

Topics covered include: Generative AI, LLMs, Prompt Engineering, RAG, Vector Databases, LangGraph, Fine-tuning, Computer Vision, and more.

Track progress live in content_plan.json.


Daily Production Infographic

Daily Report Infographic


Star History

Star History Chart


Contributing

Contributions are welcome. Open an issue or submit a pull request.

License

MIT License. See LICENSE for details.

Projets similaires

利用 AI 大模型和自动化工作流,根据主题或关键词一键生成高清短视频。Generate HD short videos from a topic or keyword with an automated AI workflow.

Pythonai-video-generatorcontent-creationffmpeg
Hharry0703
126,8 k étoiles19,8 k

🎬 Fully automated YouTube channel management with AI agents. Creates, optimizes & publishes videos 24/7. Works with FREE Gemini API or OpenAI. No coding required!

JavaScriptai-agentsai-poweredautomation
DdarkzOGx
3,9 k étoiles1,2 k

🚀 AI 全自动短视频引擎 | AI Fully Automated Short Video Engine

Pythonaigccomfyuiimage-generation
AATH-MaaS
28,5 k étoiles4,2 k