Skip to content

feat: add PWA app shell and offline upload queue for mobile #259

@Abhash-Chakraborty

Description

@Abhash-Chakraborty

Problem

The mobile strategy chooses PWA-first, but the app does not yet have an installable mobile shell or offline upload queue.

Goal

Add the first PWA mobile foundation without pretending the phone runs the full ML stack locally.

Scope

  • Add a web app manifest and installable PWA shell.
  • Add service worker support compatible with the current Next.js setup.
  • Add an IndexedDB-backed draft upload queue for images selected while offline.
  • Flush queued uploads when the backend is reachable again.
  • Keep heavy ML processing on the user-owned backend.

Acceptance criteria

  • App has a valid manifest with icons, name, theme color, and display mode.
  • Core shell/navigation can be cached for installable PWA behavior.
  • Offline-selected uploads are stored in IndexedDB with removable draft state.
  • Queued uploads flush only to the configured Find backend.
  • UI clearly shows queued, uploading, failed, and completed draft states.
  • Tests or documented manual checks cover offline queue behavior.

Suggested files

  • frontend/src/app/
  • frontend/src/lib/
  • frontend/public/
  • frontend/package.json
  • docs/plans/not-started/mobile-strategy.md

Related

Metadata

Metadata

Assignees

Labels

enhancementNew feature, improvement, or enhancement request.frontendFrontend UI, state, and Next.js workgssoc26Related to GirlScript Summer of Code 2026.level:advancedGSSoC difficulty level: advanced. Base contributor points: 55.local-firstPrivacy-preserving local runtime and offline behaviormobile-appAndroid, iOS, PWA, and mobile packaging workpriority: highImportant issue that should be handled soonstatus: availableOpen for contributors to pick upui/uxUser interface, interaction, and visual polish

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions