92 lines
2.5 KiB
Markdown
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. |