A minimal web app for extracting and reviewing frames from climbing beta videos.
- Enter a YouTube URL of a climbing video
- Video is downloaded and split into 1-second frames
- Select the frames you want to keep
- Scrub through your selection to analyze movement sequences
- Backend: PHP 8.3 with dependency injection
- Routing: FastRoute
- Templating: Twig
- Storage: DigitalOcean Spaces (S3-compatible)
- Video Processing: youtube-dl + ffmpeg
- PHP 8.3+
- Composer
- youtube-dl
- ffmpeg
- DigitalOcean Spaces account (or S3)
# Install dependencies
composer install
# Copy environment template
cp .env .env
# Add your DigitalOcean Spaces credentials to .env
SPACES_KEY=your_key
SPACES_SECRET=your_secret
SPACES_REGION=nyc3
SPACES_BUCKET=betascrubber-frames
SPACES_ENDPOINT=https://nyc3.digitaloceanspaces.com
# Start local server
php -S localhost:8000 -t public