Authentication Features:
- Optional HTTP Basic Auth with session cookies for web interface protection
- Configurable username/password with session timeout (default: 1 hour)
- Selective route protection (web interface protected, webhooks/APIs remain public)
- Authentication status display with logout functionality in web UI
- Session cleanup and graceful logout with browser re-authentication prompt
Configuration:
- WEB_AUTH_ENABLED in .env (default: false - no breaking changes)
- WEB_AUTH_USERNAME/WEB_AUTH_PASSWORD in .env.secrets
- WEB_AUTH_SESSION_TIMEOUT configurable (5min-24h range)
Development Tools:
- Added debug_tv.py for TV series/episode debugging (series, season, episode levels)
- Comprehensive episode data inspection with validation and sources breakdown
- Complements existing debug_movie.py for complete media debugging coverage
Technical Implementation:
- SimpleAuthMiddleware with FastAPI integration
- Session management with automatic cleanup
- Authentication status API endpoints
- Responsive CSS styling for auth UI elements
- JavaScript functions for auth checking and logout
Initial clean repository with full NFOGuard codebase:
- Docker-based media file processing
- Webhook integration for Radarr/Sonarr
- NFO file management and organization
- Emby/Jellyfin plugin integration
- TMDB API integration for metadata
- Smart episode and movie renaming
- Comprehensive dual-repository development workflow
Author: SBCrumb