Skip to content

QoL fixes, UI rework, mobile improvements & provider health checks#41

Open
Quickkill0 wants to merge 2 commits intomaxpiva:mainfrom
Quickkill0:qol-ui-fixes
Open

QoL fixes, UI rework, mobile improvements & provider health checks#41
Quickkill0 wants to merge 2 commits intomaxpiva:mainfrom
Quickkill0:qol-ui-fixes

Conversation

@Quickkill0
Copy link
Copy Markdown
Contributor

Summary

Extracted QoL/UI improvements and bug fixes from the multi-user PR, with all auth/user-management code removed. This is a standalone set of improvements that works on the existing codebase with no new dependencies.

Backend

  • Provider health checks: per-provider, per-package, and all-providers health check system with DB persistence
  • Download management: remove single download, clear by status, retry all failed
  • Search improvements: per-provider augment timeouts (30s), cancellation handling, batch thumb registration
  • Provider cache resilience: thread-safe semaphore, try-catch around broken extensions at startup
  • Series fixes: route rename /api/serie/api/series, rename files endpoint, title correction fixes
  • EF migration for provider health check columns

Frontend

  • Sidebar redesign: expandable/collapsible with pin, theme toggle, inline download counters, framer-motion animations
  • Mobile header: hamburger menu, swipe-from-left gesture, responsive search overlay
  • Queue page redesign: tabbed UI (Running/Waiting/Completed/Failed), metrics summary bar, confirm dialogs, bulk actions
  • Series detail: compact ProviderCard layout with small thumbnails and badges
  • Cloud latest: responsive details modal (drawer on mobile, dialog on desktop)
  • Provider manager: health check buttons with status badges and tooltips
  • PWA support: service worker, offline page, install prompt, web manifest
  • New UI components: pull-to-refresh, responsive-modal, textarea, FAB, shared PageLayout
  • Settings: tabbed UI with General and About tabs
  • API client: better error message parsing from response body, abort signal support
  • SignalR: guard against concurrent connection initialization

Build/CI

  • Docker build: JDK 21 + Gradle for Android.Compat.dll rebuild step
  • Standalone rebuild-androidcompat workflow
  • Bridge runtime improvements and ExtensionLoadException

What's NOT included

  • No user/auth system (JWT, login, registration, permissions, invites, requests)
  • No new NuGet dependencies (BCrypt, JwtBearer, JWT tokens)
  • No [Authorize] attributes on controllers
  • No database schema changes for users/sessions/permissions

Test plan

  • Verify app starts and provider cache loads (with resilience for broken extensions)
  • Test sidebar expand/collapse/pin and theme toggle
  • Test queue page tabs, metrics, clear/retry-all actions
  • Test provider health check from provider manager
  • Test search with cancellation (navigate away during search)
  • Test download management (remove single, clear completed/failed)
  • Test series rename button on series detail page
  • Verify mobile responsiveness (hamburger, swipe, drawer modals)
  • Test PWA install prompt and offline page

Quickkill0 and others added 2 commits March 25, 2026 09:13
Backend:
- Provider health check system (per-provider, per-package, and all-providers)
- Download management: remove single, clear by status, retry all failed
- Search improvements: per-provider timeouts, cancellation handling, batch thumb registration
- Provider cache: thread-safe semaphore, resilience around broken extensions
- Startup resilience: provider cache failures no longer prevent app startup
- Series route rename: /api/serie -> /api/series
- Rename series files endpoint for re-applying title corrections
- Fix: series title used instead of truncated provider title for filenames
- Fix: create chapter in dest provider if missing during reassignment
- EF migration for provider health check columns

Frontend:
- Complete sidebar redesign: expandable/collapsible with pin, theme toggle, download counters
- Mobile header: hamburger menu, swipe gesture, responsive search overlay
- Queue page redesign: tabbed UI, metrics summary, confirm dialogs, bulk actions
- Series detail: compact ProviderCard layout with thumbnails and badges
- Cloud latest: responsive card defaults, redesigned details modal (drawer on mobile)
- Provider manager: health check buttons with status badges
- Shared PageLayout component replacing repeated sidebar/header patterns
- PWA: service worker, offline page, install prompt, web manifest
- New UI components: pull-to-refresh, responsive-modal, textarea, FAB
- Drawer UX improvements, safe-area-inset support, data-vaul-no-drag
- Settings page: tabbed UI with General and About tabs
- Improved provider-match-dialog and provider-preferences with mobile drawer
- API client: better error message parsing, abort signal support
- SignalR: guard against concurrent connection initialization

Build/CI:
- Docker build: JDK 21 + Gradle for Android.Compat.dll rebuild
- Standalone rebuild-androidcompat workflow
- Bridge runtime improvements and ExtensionLoadException
Triggered by changes to AndroidCompat build configuration.
Kotlin 2.3.0
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant