SkillAgentSearch skills...

YoutubeVideoGenerator

AI-driven YouTube video generator that creates viral content automatically - from script to upload in minutes. Modern SaaS platform built with Laravel, Vue.js, n8n and Docker, featuring intelligent automation and seamless YouTube integration.

Install / Use

/learn @MohamedElaassal/YoutubeVideoGenerator
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

🎬 VideoGenius AI - YouTube Video Generator SaaS

VideoGenius AI Laravel Vue.js Docker

Transform any topic into viral YouTube content with the power of AI

🚀 Live Demo📖 Documentation🛠️ Installation🤝 Contributing

</div>

🌟 Overview

VideoGenius AI is a revolutionary SaaS platform that automates the entire YouTube video creation process. From script generation to final upload, our AI-powered system handles everything, enabling creators to scale from weekly uploads to daily content production effortlessly.

✨ Key Features

  • 🤖 AI Script Generation - GPT-4/GEMINI powered viral script creation
  • 🎨 Smart Visual Selection - Automatic stock footage and image selection
  • 🗣️ Professional Voiceover - Natural AI voice synthesis with 40+ voices
  • 🔄 Autopilot Mode - 24/7 automated video creation and scheduling
  • 📺 Direct YouTube Upload - Seamless channel integration with OAuth 2.0
  • 📊 Advanced Analytics - Real-time performance tracking and insights
  • 🎯 SEO Optimization - AI-generated titles, descriptions, and tags

🏗️ Architecture

Tech Stack

Backend:

  • 🐘 Laravel 12 - Modern PHP framework with elegant syntax
  • 🔄 Inertia.js - SPA experience without API complexity
  • 🐳 Docker Compose - Containerized microservices architecture
  • 🗄️ MySQL 8.0 - Robust relational database
  • Redis - High-performance caching and session storage
  • 🔧 n8n - Workflow automation and AI orchestration

Frontend:

  • 💚 Vue.js 3 - Progressive JavaScript framework
  • 🎨 Tailwind CSS - Utility-first CSS framework
  • Custom Animations - Glassmorphism and particle effects
  • 📱 Responsive Design - Mobile-first approach
  • Vite - Lightning-fast build tool

AI & APIs:

  • 🧠 OpenAI GPT-4 or Gemini - Advanced script generation
  • 🎤 Text-to-Speech - Multiple TTS providers
  • 📸 Pexels API - High-quality stock media
  • 📺 YouTube API v3 - Direct channel integration
  • 🔐 Google OAuth 2.0 - Secure authentication

System Architecture

┌─────────────────┐    ┌─────────────────┐    ┌─────────────────┐
│   Frontend      │    │   Backend       │    │   AI Services   │
│   (Vue.js)      │◄──►│   (Laravel)     │◄──►│   (GPT-4, TTS)  │
└─────────────────┘    └─────────────────┘    └─────────────────┘
         │                       │                       │
         ▼                       ▼                       ▼
┌─────────────────┐    ┌─────────────────┐    ┌─────────────────┐
│   Web Server    │    │   Database      │    │   Media APIs    │
│   (Nginx)       │    │   (MySQL)       │    │   (Pexels)      │
└─────────────────┘    └─────────────────┘    └─────────────────┘
         │                       │                       │
         └───────────────────────┼───────────────────────┘
                                 ▼
                    ┌─────────────────┐
                    │   Docker        │
                    │   Compose       │
                    └─────────────────┘

🔧 n8n Workflow Integration

VideoGenius AI leverages n8n as the core automation engine that orchestrates the entire video creation pipeline. The workflow handles AI service coordination, media processing, and YouTube publishing in a visual, node-based environment.

📋 Workflow Import

The complete video generation workflow is defined in complete_video_generator.json. This workflow must be imported into your n8n instance to enable automated video creation.

To import the workflow:

  1. Access n8n Dashboard

    http://localhost:5678
    
  2. Import Workflow

    • Click "Import from File"
    • Select workflows/complete_video_generator.json
    • The workflow will automatically connect to Laravel backend
  3. Workflow Configuration

    # No API credentials needed in n8n!
    # Laravel handles all external API integrations:
    # - OpenAI/GEMINI API (configured in Laravel .env)
    # - Pexels API (configured in Laravel .env)
    # - Google Cloud TTS (configured in Laravel .env)
    # - YouTube API (OAuth handled by Laravel)
    # 
    # n8n only needs Laravel webhook endpoints
    

🏗️ n8n Workflow Architecture

┌─────────────────┐    ┌─────────────────┐    ┌─────────────────┐
│   Trigger       │    │   Script Gen    │    │   Media Search  │
│   (Webhook)     │───►│   (OpenAI)      │───►│   (Pexels API)  │
└─────────────────┘    └─────────────────┘    └─────────────────┘
                                │                       │
                                ▼                       ▼
┌─────────────────┐    ┌─────────────────┐    ┌─────────────────┐
│   Status Update │    │   Voice Gen     │    │   Media Filter  │
│   (Laravel API) │◄───│   (TTS API)     │◄───│   (Processing)  │
└─────────────────┘    └─────────────────┘    └─────────────────┘
         │                       │                       │
         ▼                       ▼                       ▼
┌─────────────────┐    ┌─────────────────┐    ┌─────────────────┐
│   Video Compile │    │   SEO Optimize  │    │   YouTube Upload│
│   (Python Script)│───►│   (AI Generated)│───►│   (API v3)      │
└─────────────────┘    └─────────────────┘    └─────────────────┘
         │                       │                       │
         └───────────────────────┼───────────────────────┘
                                 ▼
                    ┌─────────────────┐
                    │   Final Status  │
                    │   (Webhook)     │
                    └─────────────────┘

🎬 Workflow Nodes Breakdown

1. Webhook Trigger

  • Receives video creation requests from Laravel
  • Validates input parameters (topic, style, duration)
  • Initiates the automation pipeline

2. Script Generation (Laravel API Call)

  • Sends request to Laravel backend for script creation
  • Laravel handles OpenAI GPT-4 integration internally
  • Returns structured script with timestamps

3. Media Selection (Laravel API Call)

  • Requests media assets from Laravel backend
  • Laravel handles Pexels API integration and filtering
  • Returns curated media URLs and metadata

4. Voiceover Generation (Laravel API Call)

  • Sends script to Laravel for TTS processing
  • Laravel manages TTS service integration
  • Returns audio file URL and duration

5. Video Compilation (Laravel Queue Job)

  • Triggers Laravel queue job for video assembly
  • Laravel executes Python scripts internally
  • Combines all assets into final MP4

6. SEO Optimization (Laravel AI Service)

  • Requests optimized metadata from Laravel
  • Laravel generates title, description, and tags
  • Returns SEO-optimized content

7. YouTube Upload (Laravel OAuth)

  • Triggers Laravel YouTube upload service
  • Laravel handles OAuth authentication and API calls
  • Returns upload status and video URL

8. Status Updates (Laravel Webhooks)

  • Receives progress updates from Laravel
  • Updates workflow execution status
  • Triggers completion notifications

⚙️ Workflow Configuration

Webhook URLs

LARAVEL_APP_URL=http://app:9000 N8N_WEBHOOK_URL=http://n8n:5678/webhook

External API Endpoints

GEMINI_ENDPOINT=https://api.openai.com/v1 PEXELS_ENDPOINT=https://api.pexels.com/v1 YOUTUBE_ENDPOINT=https://www.googleapis.com/upload/youtube/v3


### 📊 Workflow Monitoring

Monitor your n8n workflows through:
- **Execution History**: Track success/failure rates
- **Performance Metrics**: Average processing times
- **Error Logs**: Debug failed executions
- **Resource Usage**: CPU and memory consumption

### 🔄 Workflow Customization

The `complete_video_generator.json` workflow can be customized for:
- **Different Content Types**: Educational, entertainment, news
- **Brand Guidelines**: Add custom intro/outro sequences
- **Publishing Schedules**: Set automated upload timing
- **Quality Settings**: Adjust video resolution and bitrate

**Advanced Customization:**
```javascript
// Example: Custom script generation prompt
{
  "prompt": "Create a {{$json.style}} YouTube script about {{$json.topic}} that is {{$json.duration}} long, includes viral hooks, and targets {{$json.audience}} audience.",
  "max_tokens": 1500,
  "temperature": 0.7
}

🚀 Installation

Prerequisites

  • Docker and Docker Compose
  • Git
  • Google Developer Account (for YouTube API)
  • OpenAI API Key

Quick Start

  1. Clone the repository
git clone https://github.com/MohamedElaassal/youtubeVideoGenerator.git
cd youtubeVideoGenerator
  1. Environment Configuration
cp .env.example .env
  1. Configure your environment variables
# Database
DB_CONNECTION=mysql
DB_HOST=db
DB_PORT=3306
DB_DATABASE=youtube_generator
DB_USERNAME=root
DB_PASSWORD=secret

# Google OAuth & YouTube API
GOOGLE_CLIENT_ID=your_google_client_id
GOOGLE_CLIENT_SECRET=your_google_client_secret
GOOGLE_REDIRECT_URI=http://localhost:8000/auth/google/callback

# AI Services
OPENAI_API_KEY=your_openai_api_key
PEXELS_API_KEY=your_pexels_api_key

# TTS Configuration
TTS_SERVICE=gTTS
TTS_LANGUAGE=en
  1. Build and start the application
docker-compose up -d --build
  1. Install dependencies and setup
# Install PHP dependencies
docker-compose exec app composer install

# Install Node.js dependencies
docker-compose exec app npm install --legacy-peer-deps

# Generate application key
docker-compose exec app php artisan key:generate

# Run database migrations
docker-compose exec app php artisan migrate

# Build frontend assets
docker-compose exec app np

Related Skills

View on GitHub
GitHub Stars20
CategoryContent
Updated7d ago
Forks3

Languages

Vue

Security Score

95/100

Audited on Apr 1, 2026

No findings