- Add runtime field to Movie model and display formatted duration (e.g., 2h 22min) on movie cards
- Add bulk "Refresh OMDb" button in admin panel for selected movies
- Add runtime field to movie edit modal in admin panel
- Implement first-time setup flow: show admin creation form on login page when no admin exists
- Block registration page until initial setup is complete
Co-Authored-By: Claude Opus 4.5 <[email protected]>
Include low-quality video file paths in movie settings, expose them through the admin UI, and add a player toggle that streams /api/video with quality=low when available. Extend both Node and Python video endpoints to serve the low-quality file.
Test: not run (mark for testing)
Introduces a new /api/video route for streaming video files stored on the server. This allows for direct playback of local video files with seeking capabilities. The Movie model and UI have been updated to support this new feature.
Co-authored-by: mathieumoran1 <[email protected]>
Adds gzip compression middleware and an in-memory cache for movie data to improve performance. Also adds database indexes for common query patterns.
Co-authored-by: mathieumoran1 <[email protected]>