Skip to content

Local development

Run the FastAPI backend and the Vite dev server directly — best for editing the code.

Prerequisites

  • Python 3.11+
  • Node.js 20+ (CI verifies with Node.js 24)
  • yt-dlp
  • ffmpeg / ffprobe

Backend

cd backend
python3 -m venv .venv
source .venv/bin/activate
pip install -e ".[dev]"
CVN_DB_MIGRATE_ON_STARTUP=true uvicorn app.main:app --host 127.0.0.1 --port 8000

Frontend

cd frontend
npm install
VITE_API_BASE_URL=http://127.0.0.1:8000 npm run dev -- --host 127.0.0.1 --port 5173

Open the console

http://127.0.0.1:5173/

Health check

curl http://127.0.0.1:8000/api/health

Turn on real downloads

The dev servers start with the worker off. To perform real transfers, set the worker flags and restart the backend — see Enable real downloads.

Next steps