2025-08-23 23:56:19 +02:00

92 lines
2.5 KiB
Markdown

# Video Inspiration Finder 🎯
AI-powered YouTube video recommendation system that learns your preferences to suggest coding videos you'll love.
## Features
- 🔍 **Smart Search**: Finds viral coding videos from YouTube
- 🤖 **Machine Learning**: RandomForest model learns your preferences
- 📊 **Web Dashboard**: YouTube-like interface showing personalized recommendations
- 🔒 **Privacy First**: All data stored locally in SQLite
-**Fast Setup**: One command installation and execution
## Quick Start
### Option 1: Command Line Interface
```bash
./setup.sh
```
This will:
1. Create virtual environment
2. Install dependencies
3. Search for videos
4. Start interactive rating session
### Option 2: Web Dashboard
```bash
./setup.sh # First time setup
python run_dashboard.py
```
Opens a YouTube-like dashboard at `http://localhost:5000`
## How It Works
1. **Search Phase**: Queries YouTube API for trending coding videos
2. **Rating Phase**: You rate videos as like/dislike with optional notes
3. **Learning Phase**: After 10+ ratings, ML model activates
4. **Recommendation Phase**: AI suggests videos based on your preferences
## Project Structure
```
src/
├── database/ # SQLite operations
├── youtube/ # YouTube API integration
├── ml/ # Machine learning pipeline
└── rating/ # Interactive rating system
main.py # CLI application
dashboard_api.py # Web API server
templates/ # Dashboard HTML/CSS/JS
```
## ML Pipeline
- **Features**: 11 extracted features (keywords, engagement, sentiment)
- **Model**: RandomForest with 100 trees
- **Training**: Incremental learning after each rating
- **Prediction**: Confidence scores for video recommendations
## Requirements
- Python 3.7+
- YouTube Data API v3 key
- SQLite (included with Python)
## Setup
1. Get YouTube API key from [Google Cloud Console](https://console.cloud.google.com/)
2. Create `.env` file:
```
YOUTUBE_API_KEY=your_api_key_here
```
3. Run `./setup.sh`
## Dashboard Features
- 📱 Responsive YouTube-like design
- 🎯 AI confidence scores for each recommendation
- 🔄 Real-time model status (learning vs trained)
- 🖱️ Click videos to open in YouTube
- 📊 Visual feedback on model training progress
## Commands
```bash
./setup.sh # Full setup and CLI
python main.py # CLI only
python run_dashboard.py # Web dashboard
python dashboard_api.py # API server only
```
Built with Python, Flask, scikit-learn, and YouTube Data API v3.