Skip to content

refactor: rebuild GPS discovery feed experience - #1

Open
lizr-phys wants to merge 2 commits into
mainfrom
feat/discovery-feed-redesign
Open

refactor: rebuild GPS discovery feed experience#1
lizr-phys wants to merge 2 commits into
mainfrom
feat/discovery-feed-redesign

Conversation

@lizr-phys

@lizr-phys lizr-phys commented Jul 30, 2026

Copy link
Copy Markdown
Owner

What changed

Rebuilds GPS around a focused, finite repository discovery feed while preserving all existing APIs, InteractionType semantics, search, library, trends, subscriptions, profile, bilingual mode, privacy controls, demo mode, and Site Agent.

Design and interaction

  • Replaces the dashboard-like shell with a 76px desktop rail and independent mobile bottom navigation.
  • Introduces a deterministic repository field passport with three-level progressive disclosure.
  • Adds native accessible detail/negative-feedback dialogs, mobile bottom sheets, focus restoration, and reduced-motion support.
  • Adds J/K/F/L/O/D/Z and / shortcuts with editable-target and dialog guards.
  • Adds optimistic browse/feedback, immediate pending-request undo, truthful rollback, and stable toast status.
  • Self-hosts Geist Variable for Latin text while retaining a system CJK stack.

Performance and resilience

  • Health request count in the measured onboarding flow: 3 -> 1.
  • Source CSS: 72,579 -> 56,352 bytes; production CSS: 66,191 -> 44,906 bytes.
  • Inline styles: 133 -> 77; box-shadow declarations: 39 -> 18; backdrop-filter: 8 -> 0.
  • Deduplicates and caches repository briefs, prefetches only the next item, and lazy-loads Site Agent.
  • Cancels or isolates stale feed/search/detail/trend/agent responses.
  • Keeps current content visible when an optimistic feedback write fails offline.

References and skills

Source patterns were studied from dub, Twenty, Karakeep, Bluesky Social, shadcn/ui, Magic UI, Motion, and TanStack Virtual. Applied frontend-design, impeccable, web-design-guidelines, and vercel-react-best-practices. No new npm runtime dependency was added.

Verification

  • pnpm typecheck - pass
  • pnpm lint - pass, 0 warnings
  • pnpm test - 42/42 pass
  • pnpm test:integration - 13/13 pass
  • Targeted Chromium E2E - 4/4 pass (discovery/undo/mobile dialog, Site Agent, mobile onboarding, Axe/reduced motion/offline recovery)
  • pnpm build - pass, 37 routes/pages, 37.2s total, 9.8s compile
  • Impeccable finish review - disposition: pass

Screenshots

Desktop discovery

Mobile discovery

Additional captures: project detail (mobile, zh), search (desktop, en), and feed error recovery (desktop, en) are in docs/screenshots/.

Compatibility and known limits

  • Search/recommendation ranking weights and backend business semantics are unchanged.
  • Chromium was the scoped E2E browser for this frontend round; the complete cross-browser device matrix remains follow-up validation.
  • Brief cache is process-local and should move to Redis/KV for multi-instance deployments.
  • Preview: Vercel deployment was intentionally skipped per user request. Local production smoke test passed at http://localhost:3200 (home 200, health ok, Demo start 200).

Full report: docs/frontend-redesign-report.md
Design system: DESIGN.md

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