Skip to content

v1.9.0

Choose a tag to compare

@github-actions github-actions released this 09 Aug 12:03
· 1 commit to 6033f44b64dffd50ea296f2b06755c3db1a5fd0f since this release

1.9.0 (2026-08-09)

Features

  • Add *arr category selector for manual torrent uploads (0fc5635), closes #67
  • add about page and contributor credits (53990dc)
  • add app-wide dynamic theme hooks and refactor theme provider (388640d)
  • add currently watching count hooks and settings integration (a911e84)
  • add Discovery logo and update navigation/cards (6c855b4)
  • add downloads controls and newsletter generation tools (6801b8f)
  • add dynamic skeleton layout counts and portal layout enhancements (7bec157)
  • add Emby polish, JellyGlance option, and NZBGet support (af8da51)
  • add installable app support (fb8f80c)
  • add keyword and studio click handlers to media overview (6547f0e)
  • add library queue toggle to discover home and refine tab/search styling (073ab9b)
  • add media overview extras and combined ratings (dfd4273)
  • add mobile dropdown navigation for discovery tabs (a3cceb8)
  • add ModalPortal and improve modal components (889941d)
  • add my requests page and update discovery features (aede3fd)
  • add OpenInArrButton and update discovery/requests (71673ca)
  • add OpenInLibraryButton and update discovery/index (da3812d)
  • add Overseerr blocklist management and update admin panels (547f962)
  • add Overseerr download status tracking and update discovery utils (3b94ef8)
  • add Overseerr issues reporting and request queue dashboard (ae9fa7c)
  • add Overseerr season status tracking and update discovery utils (f89673b)
  • add request modal and update media details page (220d3e4)
  • add request tag creation API, expose quota-blocked flags, overhaul RequestModal (cc65527)
  • add setting to hide Downloads tab from non-admin members (5d048d8)
  • add smart focal-point cropping to SlideshowBackground for face-aware framing (1bc07bf)
  • add Sonarr library status tracking and update availability logic (ab53718)
  • add status overlay and update availability checks (a18d22c)
  • add Test Connection button for TMDB Integration (#77) (b24ee92)
  • add Test Connection button for TMDB Integration (#77) (100bfae)
  • add touch drag and button controls for mobile navigation reordering (4e1fb91)
  • add watchlist page and update discovery (48a4360)
  • analytics: add clickable viewers modal to see who watched items (c2b6830)
  • analytics: add github style 365-day activity heatmap to personal wrap up (367547d)
  • analytics: add recently watched details modal and swap circles to posters (6e10dbc)
  • analytics: convert recently watched modal into universal details modal across all dashboard grids (ef39500)
  • api: extract interesting wikipedia trivia instead of plot summaries for facts (7a37faa)
  • collexions: add health checks and faster gallery with bulk actions. (5e8f6f3)
  • collexions: add one-click job templates and franchise search for Plex collections. (6e8d76c)
  • collexions: add optional auto-start for the pinning service. (a96f698)
  • collexions: auto-set collection posters on create/sync and Gallery fix-art. (b74d515)
  • collexions: bundle worker in portal image and fix nav visibility (6a957a5)
  • collexions: drive next/last run from status.json and show pin fairness on the dashboard. (b688309)
  • collexions: expand Templates Genres with full TMDB movie and TV lists. (1a949e3)
  • collexions: expand Trending presets with Top 10 and many movie/TV catalogs. (e620cd6)
  • collexions: filter Creator templates and trending by target library media. (c7468ef)
  • collexions: improve gallery placeholders, config conflicts, and home widget. (070e029)
  • collexions: manage hubs, delete collections, and harden Creator UX. (3614b6b)
  • collexions: search Trakt lists and create collections from them. (a7ac80b)
  • collexions: seed from portal and import standalone config.json (9ec9dc4)
  • collexions: show film count pills on franchise search results. (7b3f3e6)
  • collexions: use 2x2 mosaic posters and fix pin-slot counting. (08a764a)
  • collexions: use icon dropdown for section nav on mobile. (0614ed1)
  • collexions: validate config on save and review diffs before commit. (8be0c3e)
  • dashboard: show approximate stream location map for remote sessions. (5d17e16)
  • deduplicate member requests to hide HD and 4K duplicate items in UI (a407226)
  • default Discover to TMDB and Request Engine to Portal JSON store (e923eb1)
  • discovery: add season episodes modal to media details page (16985ca)
  • discovery: cache Sonarr/Radarr availability badges for first paint. (10b8344)
  • discovery: enhance media overview extras with clickable creator pills (e3be19b)
  • discovery: improve genre slider image loading and fallback logic (f61cc59)
  • discovery: improve search resilience with retries and abort controllers (a6d67f0)
  • discovery: integrate Sonarr active queue status for TV show availability (ec0c882)
  • discovery: internationalize DiscoverHome and SeasonEpisodesModal components (a741f0c)
  • discovery: pass UI locale to backend for translated TMDB metadata (d4b9cf1)
  • discovery: phase 2 direct TMDB client behind discoverySource flag. (61ffd65)
  • discovery: phase 3 portal library availability from Sonarr/Radarr. (5b85a74)
  • discovery: phase 4 default Discover to TMDB without Seerr sync. (b67cf11)
  • display app version in sidebar footer (14b6967)
  • downloads: sticky client filter and persistent active-only view (dd3873a)
  • enrich upgrader Sonarr codec data with Plex fallback when mediaInfo is missing (34596aa)
  • expand media integrations and portal dashboard (7eff71a)
  • fall back to TheTVDB posters when Discover TV titles lack TMDB art (de278b6)
  • implement 'hide requested' toggle across discovery views (e76db0c)
  • implement native Overseerr discovery and request frontend (30db2ec)
  • improve Discover loading animations with staggered posters and shimmer skeletons (95e0942)
  • improve dynamic theme integration and update DiscoverHeroHeader (b9ac4f4)
  • improve SEO meta description based on server config (dd281ec)
  • improve settings navigation and media player branding (809affb)
  • integrate Collexions as admin portal feature with Flask sidecar (30ef1ae)
  • integrate detailed backend ratings into discovery UI (79768cc)
  • integrate discovery facts directly into media overview extras (72b1e0a)
  • integrate user permissions and quotas into discovery UI (0ccf425)
  • Massive Overhall (e311a33)
  • move Public Base URL into Portal UI for invite and share links. (874119e)
  • move Public Base URL into Portal UI for invite and share links. (ccb149d)
  • nav: add server-wide hide toggles in Navigation Order settings. (e60376b)
  • overhaul filter drawer with language, certification, runtime, watch-provider and TV status filters; improve lastLogin tracking (393b0c0)
  • phase10: hard-cut to portal-only requests and TMDB discover. (ef433b4)
  • port AnalyticsDashboard from main onto beta (b2249c9)
  • portal-first setup with optional Seerr history import. (3e51b52)
  • portal-request: phase 1 Seerr uncouple inventory and stubs. (6df81d8)
  • pwa: enable custom server PWA icons for Chrome/Edge while bypassing Firefox bugs (356f4a5)
  • pwa: scale down dynamic circular badge to prevent launcher clipping (dd7fe65)
  • pwa: upgrade manifest and service worker for full Chrome Android installation support (d7f2ac5)
  • refine watching counts and settings (cebc1f0)
  • requests: phase 5 portal JSON request store and faster Discover browse. (21acbb9)
  • requests: phase 6 portal approve and direct *arr push. (a9045f4)
  • requests: phase 7 sync portal request status from *arr. (e8cf382)
  • requests: phase 8 portal issues and basic quotas. (9ce40d4)
  • requests: phase 9 portal watchlist, blocklist, and Seerr import. (e89ff53)
  • requests: show genres and original language on request cards. (b4a0b84)
  • scanner: add live activity log to Scanner settings. (9d70e9d)
  • scanner: add native Autoscan-style library refresh for admins. (94b6187)
  • scanner: add safe trigger tests and log Arr test webhooks. (15af04d)
  • scanner: add settings toggle to hide ARR webhooks on Scanner page. (3a87294)
  • scanner: add show/hide toggle for webhook auth password. (16184e6)
  • scanner: add toggleable home widget and full-width Scanner page. (7897e5b)
  • scanner: collapsible manual path, settings hide toggle, drop path verify. (f029f6c)
  • scanner: filter activity by configured Arr apps. (1525f98)
  • scanner: full-width home strip, live log tools, and clearer target errors. (566a685)
  • scanner: make ARR webhooks section collapsible on Scanner page. (869b724)
  • scanner: paginate recent activity at five entries per page. (4b54f0c)
  • scanner: premium dashboard with import/upgrade/delete activity reasons. (472e320)
  • scanner: show Arr icons in activity filter. (92d63e9)
  • scanner: surface Autoscan config.yml upload/import at top of Settings. (2cba19d)
  • settings: restore Seerr as optional request engine and Discover source. (4fa769b)
  • settings: show tab icons and section groups in mobile dropdown. (de2a889)
  • setup: add Plex library fetching and Arr routing support during initial setup wizard (2fbc683)
  • setup: let users choose portal or Seerr during wizard requests step. (a03fb93)
  • show latest watched item on the Total Streams wrap-up card (b7be887)
  • status: add period ranges, latency history, and incident timeline. (6105c71)
  • status: add portal connection speed test on Overview. (172a43d)
  • theme: introduce light mode theme (7ba01b8)
  • TRaSH-style simple custom format builder with full Sonarr spec output (860a9e1)
  • ui: add carousel component (e0defe3)
  • ui: add dynamic chameleon theme that extracts vibrant primary colors from user context images (fdd4ab9)
  • ui: add Radarr release dates (cinema, streaming, blu-ray) to movie details (a1e4b0a)
  • ui: additional discovery and media details updates (afa7e02)
  • ui: additional ui updates (a4e2ed3)
  • ui: convert sidebar language selector to minimal text footer link (bcbb1fd)
  • ui: display available and pending status badges on discovery media (75fce19)
  • ui: enlarge server logo rendering and restore custom PWA icons (d57747f)
  • ui: enrich discovery items for watchlists and recent requests (777ffbc)
  • ui: further discovery and media details improvements (7c218a5)
  • ui: implement advanced slide-in filter drawer for movies and series (7d72201)
  • ui: implement carousel with left right buttons for discovery rows (ec6e9c2)
  • ui: implement full-page discovery routing with edge-to-edge media profiles (2bc9a54)
  • ui: implement phase 3 overseerr parity (2ddd620)
  • ui: improve layout of mobile nav language selector and library controls (a644294)
  • ui: increase activity heatmap scale (b5dc325)
  • ui: make genre tags and network logos clickable for navigation (595e66e)
  • ui: make language selector persistent across all routes (b763c12)
  • ui: massively expand discovery dashboard with multi-row categories and enriched media profiles matching overseerr (b60c849)
  • ui: media details and discovery updates (a3b1da0)
  • ui: media details improvements (bbfb3fa)
  • ui: ongoing UI updates and bug fixes (e3c2c55)
  • ui: refactor discovery home to use external constants, components and new routing (37a5ec2)
  • ui: relocate discovery language selector to global navigation (6d90520)
  • ui: replace broken rows with rich genre and network cards (01a3a31)
  • ui: update discovery home components (b233c70)
  • ui: update discovery layout and preferences (30e6d39)
  • ui: update discovery layouts and components (3b855eb)
  • ui: update discovery preferences integration (461e6d0)
  • ui: update media details page and layout (53e7d76)
  • ui: use tmdbBackdropUrl helper, request all TV seasons, optimise backdrop loading (ee21d59)
  • update default navigation sidebar layout and add legacy migrations (14bd100)
  • update discovery carousel, home, fetch utils, and refactor nav/settings (4241fad)
  • update network logos and discovery constants (858ae6e)
  • upgrader: add Profiles & Custom Formats Manager to upgrader UI, allowing seamless generation and syncing of keyword-based custom formats and quality profile scores to sonarr and radarr (4d71e7e)
  • upgrader: add sorting by specific codec sizes (HEVC first, H264 first, AV1 first) (e2abbc2)
  • upgrader: add TRaSH catalog browser and full Sonarr spec editor (b9dc8a9)
  • upgrader: add zero_size filter to find shows and movies with 0-byte episodes or files (a96b0e3)
  • upgrader: display dominant codec percentage dynamically instead of hardcoding HEVC (65a0215)
  • upgrader: display full show episode codec/resolution snapshot in list view (67b5535)
  • upgrader: display HEVC percentage on show cards (05c100d)
  • upgrader: display multiple size pills for each active codec filter on shows (b2d69f9)
  • upgrader: paginate custom formats and quality profiles, make simple builder preserve advanced properties, and update quality profile modal layout and live sorting (715d77b)
  • upgrader: replace native select with custom dropdown component and add styled custom scrollbars to all modals (17d0e37)
  • upgrader: update quality profile modal to use css columns for a single continuous list and sort scores descending (b9efe74)
  • various request and layout improvements (2d6e394)

Bug Fixes

  • align dashboard loading skeleton with Grid controls and poster layout. (e05b804)
  • align mobile More tab and seat the overflow sheet above the nav. (6774004)
  • analytics: fix dashboard grid overlapping recently added rows (da3e4d4)
  • analytics: fix rating key extraction regex and rounded top corners on modal (2823712)
  • analytics: move recently watched modal to dashboard root to fix stacking context and layout bounds issues (144ffa0)
  • build: restore missing function declaration in discoverFetchUtils (803bcbc)
  • ci: make Docs npm ci resilient by skipping flaky npm cache. (10fad7f)
  • ci: pin React 19 and override docsearch peers so Docs npm ci succeeds. (6d73ea7)
  • ci: pin React 19 and override docsearch peers so Docs npm ci succeeds. (b7e5c22)
  • ci: surface npm ci errors and fall back to npm install for Docs. (01e10c3)
  • ci: surface npm ci errors and fall back to npm install for Docs. (ad98c01)
  • ci: sync lockfile for React 19 so Docs npm ci succeeds. (26720c6)
  • ci: upload npm ci log artifact when Docs install fails. (b43217a)
  • ci: upload npm ci log artifact when Docs install fails. (ff32139)
  • claim existing Sonarr series instantly on retry without heavy I/O. (46311c5)
  • client: reset scroll position to top on route change (ba973b5)
  • collexions: align Hubs library control and visibility toggles. (6d42741)
  • collexions: clarify eligibility logs and compact dashboard stat cards. (a413d1e)
  • collexions: drop redundant PINNED badge from Gallery posters. (38b7415)
  • collexions: gate Collexions behind Plex media server type. (b909b32)
  • collexions: improve mobile layout for Hubs and Run Inspector. (3278caa)
  • collexions: include plex_identity.py in the Docker image so the worker starts. (1dd4507)
  • collexions: match portal theme, fix start paths, and add gallery grid dropdown. (b54144b)
  • collexions: move Gallery delete control to match the Plex badge. (1578eee)
  • collexions: name franchise creates as The X Collection in Plex. (5cd91c1)
  • collexions: parse MDBList movies/shows payload and expand Discover filters. (38556e9)
  • collexions: remove leftover isSetup crash on onboarding (8c366b8)
  • collexions: speed up gallery art and restore missing thumbs. (0034576)
  • collexions: speed up Trakt list preview/create and show progress overlay. (088e995)
  • collexions: stay on Import/Discover tab after creating a collection. (e2984ee)
  • collexions: stop Creator settings bar from covering cards on desktop. (642c314)
  • collexions: stop gallery poster refresh from timing out. (d464daa)
  • collexions: stop template create 504s with longer proxy timeout and fast title matching. (2957525)
  • collexions: stop trending jobs saving source_type as undefined. (65be6dc)
  • collexions: unblock Run Now by removing shadowed datetime import. (00df259)
  • correct Unraid template Registry URL and publish Docker Schema 2 manifests (238f241)
  • correct Unraid template Registry URL and publish Docker Schema 2 manifests (1c13253)
  • discovery and library updates (819047e)
  • discovery: adopt Seerr-style catalog join and simple page advance. (9a8a186)
  • discovery: allow HD and UHD request selection together. (a4f125e)
  • discovery: bring TV request modal and series details up to movie parity. (15e92ce)
  • discovery: do not treat approved TV as available while downloading. (2de7ae3)
  • discovery: fill card badges after first paint via availability batch. (ec5d2c0)
  • discovery: force v2 Partial cache rebuild for continuing TV badges. (45062bd)
  • discovery: honor Discover Language as original-language filter. (f33bcbc)
  • discovery: keep *arr catalog work off the request path so Settings stays responsive. (ddcd7e2)
  • discovery: load badge cache at boot instantly; no 2-minute startup delay. (6e908e6)
  • discovery: make Availability Cache rebuild actually download *arr catalogs. (7bfd3a0)
  • discovery: match Seerr language filter and unblock request modals. (c297026)
  • discovery: match Sonarr via TVDB and refill hide-available home rows. (50afb68)
  • discovery: paint Discover home after one TMDB page. (f8d06c9)
  • discovery: remove duplicate batch declaration breaking Docker build. (3219956)
  • discovery: resolve unreachable code type error on trending results (95635c6)
  • discovery: restore curated genre card backdrops. (c17108f)
  • discovery: restore hide filters, watchlist availability, and request modal routing. (c2ab816)
  • discovery: serve badge states from disk cache; rescan *arr every 12 hours. (4174295)
  • discovery: speed Discover paint and instant detail open on click. (d2f3532)
  • discovery: speed home/details/requests and harden request matching. (82dc6ad)
  • discovery: stamp continuing TV with future airings as Partial and match by title. (5e30f02)
  • discovery: stamp Sonarr badges server-side and fix on-disk Partial. (77196b2)
  • discovery: stamp TV badges via TVDB map on 12h scan; poll Tasks while jobs run. (387dfff)
  • discovery: stop availability-cache rebuild from freezing the portal. (3670fd2)
  • discovery: stop Discover home sticking on skeletons after refresh. (8e12719)
  • discovery: stop multi-minute spinners and fill home like Seerr. (b73abe9)
  • discovery: stop TMDB home from hanging on *arr and genre sliders. (88c9506)
  • do not fail Upgrader Index when Library Upgrader is disabled (68e0031)
  • docker: guarantee version.txt exists before image COPY. (da1704e)
  • exclude not-configured integrations from Health Score alerts (133bedc)
  • exclude not-configured integrations from Health Score alerts (b666881)
  • expand request Advanced by default and correct swapped HD/4K Sonarr labels (834e4c6)
  • fall back to TheTVDB posters for portal TV requests. (53c3f65)
  • fall back to TVDB when Sonarr TMDB series lookup fails on approve. (2b7636e)
  • handle stale Deluge torrent controls (809affb)
  • hide empty Music and other zero rows from Server Library Size widget (e7d4ab7)
  • hide empty Music and other zero rows from Server Library Size widget (1918f29)
  • hide Request Seasons for Partial shows already on Sonarr and still airing (dadd96b)
  • hide watchlist Request buttons for Partial titles already in the library (d40d72e)
  • ignore status:5 download queue entries as already-available; revert hero opacity; drop search backdrop-blur (dbc223c)
  • improve analytics Top Movie tie-breaker logic and image fallbacks (f2bee92)
  • improve Deluge download controls (8282a03)
  • improve discover infinite scroll reliability when hide filters empty early pages (d8a81fb)
  • improve Jellyfin/Emby stats and provider-aware labels (6801b8f)
  • improve Sonarr library status tracking and media details display (8261cde)
  • keep Collexions live logs writing after clears and midnight runs. (d5c36f5)
  • keep the iOS PWA bottom nav fully visible above the More menu. (7762990)
  • load 30 Discover titles per batch with larger initial fill and longer home rails (fd5243f)
  • load about 30 Discover titles per infinite-scroll batch (64bc9a9)
  • make the request modal scrollable above the mobile nav. (f721d99)
  • match Download Clients add button to other Add Instance controls (d741741)
  • match Download Clients add button to other Add Instance controls (fd9c02b)
  • nav: show Discover and Requests when portal engine is active. (c819bf8)
  • plex: cover status probe and image fetches so Docker ID devices stop appearing. (fcc5d39)
  • plex: mutate plexapi BASE_HEADERS in place so Docker hostname stops registering as a device. (dc45bfe)
  • plex: send stable client identity so Docker restarts stop new-device alerts. (176aa4c)
  • plex: stop Collexions plexapi from registering Docker hostname as a new device. (b7e0193)
  • pwa: add dedicated maskable icon and cache-bust manifest icons (f909341)
  • pwa: bypass service worker registration on Firefox and fix CSP blocking manifest (8c9342a)
  • pwa: fix Firefox Android installation failures caused by invalid manifest icons (a084a91)
  • pwa: resolve service worker image loading failures by removing fetch interception (2df0ec5)
  • pwa: resolve strict Firefox Android manifest validation and install UI (f06a98b)
  • pwa: revert to static application icons for PWA installation manifest (08f7448)
  • remove duplicate dashboard hero background (83c6754)
  • rename Sonarr approve tvdbId param to avoid duplicate declaration. (33f5fc6)
  • replace numeric status:5 guard with proper queue-status string check for active downloads (5b198fe)
  • replace region text input with dropdown, sort providers by priority, improve nav item sizing (f8b2a7d)
  • requests: harden *arr approve pushes and keep requested titles visible. (ec489fc)
  • requests: portal request modal metadata, Sonarr folders, and Seerr import. (4a2c194)
  • resolve bugs in RequestModal and request-app-service (9867c63)
  • resolve issues with season status tracking and media details (c2f69bf)
  • resolve radarr root folder fetch bug and desktop release box alignment (59dc763)
  • resolve request modal and season issues (a766f29)
  • resolve TypeScript literal type error in inferMissingLibrarySeasonStatus (1c94e1e)
  • restore admin plex watchlist visibility (4d1f15c)
  • restore Chrome Android PWA Install with static manifest icons. (a9c659b)
  • restore HD/UHD request picker by detecting 4K arr servers from name and flags (567f490)
  • restore home dashboard layout from pre-overhaul beta tip (275e646)
  • revoke inactive users immediately instead of rolling expiry (f0a7ed8)
  • scanner: clarify path rewrite direction in settings. (f25b5ff)
  • scanner: disambiguate nullish coalescing so Docker build succeeds. (f3a14df)
  • scanner: handle Lidarr imports and align home widget styling. (eb480f8)
  • scanner: include observed Arr apps in activity filter. (2dc2dc9)
  • scanner: log webhook queue and scan results to container console. (14a6164)
  • scanner: match Plex libraries across path rewrites. (58e5f8a)
  • scanner: parse current Lidarr webhook payloads. (468c7af)
  • scanner: parse Sonarr v4 episodeFiles webhook payloads (8f6900a)
  • scanner: remount auth password input so show/hide works in Chrome. (7328f38)
  • screen component updates (7e3886a)
  • security: harden auth, SSRF guards, and secret handling for high/medium findings. (b97d8f7)
  • security: harden Collexions proxy/secrets and portal request routing. (befb6c8)
  • security: invalidate *arr options cache after creating tags. (bb9f62b)
  • show request status overlays on Discover Your Requests row. (daf3bf7)
  • speed up Request modal paint and add Deselect all / Missing only (3db9b9e)
  • speed up request-options with cache-only library stamps and surface Sonarr quality profiles. (ba23160)
  • status: fill speed-test upload buffers in 64KB crypto chunks. (a28e569)
  • status: make portal speed test accurate on multi-gig links. (3e39258)
  • status: use duration-based multi-stream speed test. (b900077)
  • stop approve-modal flicker and request 502 timeouts. (0f9ec0a)
  • stop Discover home posters remounting and re-animating on state updates (d3cedb8)
  • stop Discover posters vanishing after load by removing opacity-gated fade (66c073f)
  • stop Discover Series/Movies grid remounting on every scroll load. (2ebd55b)
  • stop marking ended complete series as still airing / Partial. (7118922)
  • stop Request modal going blank when toggling seasons. (f04e43c)
  • stop service worker proxying fetches that broke posters and fonts. (c9fe0c4)
  • strip MediaWiki markup from Did You Know facts, restore Another button and auto-rotation (4b18bb6)
  • treat existing Sonarr series as approve success and backfill posters. (f0f6881)
  • ui: adjust mobile nav max tabs to 8 and restore scroll (9e83a03)
  • ui: align Collexions onboarding with portal theme and home gaps (b71c2f0)
  • ui: allow admins to view the native discovery and request dashboard (278f6b5)
  • ui: bleed nav background below 100dvh to fill Android gesture bar gap (5b56a52)
  • ui: clarify portal requests are always on in setup wizard. (62ef9b0)
  • ui: clarify Seerr import ownership is display-only, not access. (7641667)
  • ui: correct discover API query parameters and implement pagination (f789318)
  • ui: correct heatmap month label alignment bug causing visual desync (439758d)
  • ui: correct jsx syntax in media details page (ecfe257)
  • ui: default home wrap-up period to 7 days and persist choice. (25ffdff)
  • ui: dim mobile media detail hero backdrop for clearer foreground text (529e39e)
  • ui: dock Firefox mobile nav to visual viewport without touching Chrome. (d55b227)
  • ui: dock mobile bottom nav to visual viewport on toolbar collapse. (1466924)
  • ui: expand media details width and fix cast text cutoff (56b727c)
  • ui: fill bottom/right gaps - use w-screen nav-shell and min 8px bottom padding (44534cb)
  • ui: fill Firefox mobile nav edge and bottom gaps. (e2bcc56)
  • ui: fix carousel glow, missing UK networks, broken SVG logos, and restrict to English language only (68579d0)
  • ui: fix syntax error in DiscoverHome (d2d39fd)
  • ui: hide temporary access on login until public config confirms it (cd76c81)
  • ui: improve Discover quick picks and stream detail sheet on mobile. (e8cf043)
  • ui: inject pushToast to MediaDetailsPage (b5036a1)
  • ui: keep desktop profile popup within sidebar width (e68ee7f)
  • ui: keep mobile bottom nav visible under stream details. (9c4ffd5)
  • ui: move trending view counts to bottom poster strip (e5b265f)
  • ui: open sidebar language menu upwards to prevent clipping (143f988)
  • ui: pin mobile bottom nav to viewport with seven primary slots. (5cc90f4)
  • ui: remove deprecated language profile from request review modal. (d6a50b2)
  • ui: remove language profile from Discover request modal too. (c078a3f)
  • ui: remove undefined pushToastMsg from App.tsx to fix crash (f03cdb1)
  • ui: remove undefined showQualityBadges reference in AnalyticsDashboard (4383869)
  • ui: rename Library Dashboard to Dashboard (13c86ea)
  • ui: resolve bottom nav gap on firefox mobile (3becea6)
  • ui: resolve missing imports and unassigned variables in dashboards (08922af)
  • ui: resolve void expression error in DiscoverHome (2f23e1b)
  • ui: restore main fixed bottom nav for Android PWA and Firefox. (edca9a0)
  • ui: revert broken API parameter to standard language param and restore verified TMDB logos (fc297d0)
  • ui: round corners on details page and fix discovery syntax error (d86d8b8)
  • ui: set exact nav order and 7+1 layout on mobile bottom bar (f56fb5a)
  • ui: squish mobile nav icons to fit exactly 8 items without scroll (0499eaa)
  • ui: stylize ColleXions nav label. (89a6281)
  • ui: tighten mobile nav and repair garbled trial/home copy. (b185363)
  • ui: unhide request nav tab and rename items for clarity (0fb87ec)
  • ui: use 2x2 grid for stream detail specs on mobile. (080755f)
  • ui: use custom styled text cards for networks and studios, fix carousel hover bug (243bd7c)
  • ui: use Firefox-only nav shell so Chrome keeps main fixed bottom. (c23fc6e)
  • ui: use pure css bottom:0 for mobile nav bar (6525e6b)
  • ui: use top-0 height 100dvh for perfect compositor nav positioning (8e33b27)
  • ui: use viewport shell for mobile nav so Firefox matches Chrome. (e3e44a1)
  • update custom logo previews, PWA icons, Jellyfin rank stats, and heatmap layout (53990dc)
  • update dashboard expiry rendering and relax advanced request form permissions for basic requesters (b2e7cf5)
  • update DiscoverHome skeleton loader and row gaps (21026a2)
  • update discovery items formatting and navigation (986bea5)
  • update hero background overlay and fix in-production up to date logic with trivia formatting (78c1b13)
  • update index.js (076a765)
  • update MediaDetailsPage (97f62a6)
  • update OpenInArrButton and index (1331256)
  • update OpenInLibraryButton and index (5e63738)
  • update PWA manifest icon route and discovery localization (87922a8)
  • update season request utils and status handling (10cf060)
  • upgrader: add new codec sort filters to allowed backend sorting parameters and introduce size secondary sort (3330c89)
  • upgrader: correct fallback percentage pill to display AV1 instead of hardcoded H264 (b91754f)
  • upgrader: correctly filter and count AV1 (and other arbitrary codecs) for shows (f90224a)
  • upgrader: fix missing Settings2 import in UpgraderDashboard and add External URL field to ArrInstances to fix deep linking on local IP instances (0711a77)
  • upgrader: implement missing profiles endpoint in backend and fix missing Save icon import crashing the new custom format modal (b20e907)
  • upgrader: implement multiple size pills fallback for when index has not yet been regenerated (85c5e6f)
  • upgrader: invalidate index cache for legacy items to ensure new stats like codecCounts and zeroSizeCount are populated (58c6e36)
  • upgrader: persist tab, filters, and profiles state in URL on refresh (21b7ac8)
  • upgrader: replace undefined getArrBaseUrl and arrHeaders functions with inline logic in arr API routes to fix 500 errors when fetching profiles (23bead3)
  • upgrader: resolve syntax error in size pills logic (33b6cfd)
  • use CustomSelect for user request permission overrides. (2cdbbc0)
  • use thumbUrl as fallback for Top Movie and Top Binge wrap-up card backgrounds (e5dfe35)
  • version: keep beta/testing on main's release number when package.json lags. (230caf3)
  • widen Edit User modal on desktop with a two-column layout. (d44bcac)

Performance Improvements

  • client: implement code splitting and lazy loading for admin components (82074ba)