- Python 3.8+ installed
- Node.js 16+ installed
- FFmpeg installed (for audio processing)
- yt-dlp installed (for YouTube audio extraction)
-
Navigate to the Backend directory:
cd Backend -
Install Python dependencies:
pip install -r requirements.txt
-
Install system dependencies:
# On Windows (using chocolatey) choco install ffmpeg # On macOS (using homebrew) brew install ffmpeg # On Ubuntu/Debian sudo apt update sudo apt install ffmpeg
-
Install yt-dlp:
pip install yt-dlp
-
Create a
.envfile in the Backend directory:cp env.example .env
-
Edit
.envand add your API keys:- Get YouTube API key from: https://console.developers.google.com/
- Get Gemini API key from: https://makersuite.google.com/app/apikey
-
Start the backend server:
python main.py
-
Install Node.js dependencies:
npm install
-
Start the development server:
npm run dev
Use the provided batch file to start both servers:
start-dev.batGET /health- Health checkGET /api/search?query={query}&maxresults={number}- Search YouTube videosPOST /api/invideo_search- Search within video timestampsPOST /api/summarize- Generate video summaries
- Backend won't start: Check that all dependencies are installed and API keys are set
- Frontend can't connect: Ensure backend is running on port 8000
- Transcription fails: Make sure FFmpeg and yt-dlp are installed and accessible
- Search fails: Verify your YouTube API key is valid and has quota remaining