Add app auth, dashboard, scheduler, video management, and new scrapers

- JWT-based app authentication with user roles, folder/route access control
- Dashboard with storage stats, health checks, and recent activity
- Auto-download/scrape scheduler (12h interval) with per-user and per-job configs
- Video upload, tagging, HLS transcoding, and detail pages
- New scrapers: LeakGallery, Mega (megajs), yt-dlp
- FlareSolverr integration for Cloudflare-protected sites
- Gallery: advanced filtering (date, size, search), sort modes, equal-mix shuffle
- Forum sites management with stored cookies/auth
- GridWall/GridCell components for responsive media grid
- Media API with folder-access permissions

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Trey T
2026-04-16 07:48:10 -05:00
parent 4903b84aef
commit 236f36aae6
54 changed files with 9986 additions and 420 deletions
+19
View File
@@ -4,6 +4,8 @@ services:
build: .
container_name: ofapp
restart: unless-stopped
depends_on:
- flaresolverr
ports:
- "3002:3001"
- "3003:3443"
@@ -11,9 +13,26 @@ services:
- /mnt/user/downloads/OFApp/db:/data/db
- /mnt/user/downloads/OFApp/media:/data/media
- /mnt/user/downloads/OFApp/cdm:/data/cdm
- /mnt/user/downloads/OFApp/videos:/data/videos
devices:
- /dev/dri:/dev/dri
environment:
- PORT=3001
- DB_PATH=/data/db/ofapp.db
- MEDIA_PATH=/data/media
- VIDEOS_PATH=/data/videos
- DOWNLOAD_DELAY=1000
- HLS_ENABLED=false
- LIBVA_DRIVER_NAME=iHD
- TZ=America/Chicago
- FLARESOLVERR_URL=http://flaresolverr:8191
flaresolverr:
image: ghcr.io/flaresolverr/flaresolverr:latest
container_name: flaresolverr
restart: unless-stopped
environment:
- LOG_LEVEL=info
- HEADLESS=true
ports:
- "8191:8191"