Repository navigation
v1.9.0
·
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)