Overview
Frontend login and register pages need a Continue with Google button that initiates the OAuth redirect and handles the callback token, so members can use Google sign-in end-to-end.
Context
- Login page:
frontend/app/(auth)/login/page.tsx
- Register page:
frontend/app/(auth)/register/page.tsx
- Zustand auth store:
frontend/lib/store/authStore.ts
- Depends on BE-35 being implemented first
Tasks
Files to Modify / Create
frontend/app/(auth)/login/page.tsx
frontend/app/(auth)/register/page.tsx
- New:
frontend/app/(auth)/oauth/callback/page.tsx
Overview
Frontend login and register pages need a
Continue with Googlebutton that initiates the OAuth redirect and handles the callback token, so members can use Google sign-in end-to-end.Context
frontend/app/(auth)/login/page.tsxfrontend/app/(auth)/register/page.tsxfrontend/lib/store/authStore.tsTasks
Continue with Googlebutton (Google-branded: white background, Google logo SVG,Sign in with Googletext per branding guidelines) to both login and register pagesGET /auth/google(backend initiates OAuth)/auth/oauth/callbackNext.js page that reads?token=and?refreshToken=from URL, stores them inauthStore, then redirects to/dashboard?error=, show an error toast and redirect back to/login--- or ---) between email/password form and Google buttonFiles to Modify / Create
frontend/app/(auth)/login/page.tsxfrontend/app/(auth)/register/page.tsxfrontend/app/(auth)/oauth/callback/page.tsx