Overview
src/app/(auth)/login/page.tsx and src/app/(auth)/signup/page.tsx render Google and GitHub social login buttons with no onClick handlers. Clicking them does nothing. Users who expect social sign-in are silently failed. Either the buttons should be wired to OAuth flows or removed until the feature is ready.
Specifications
Features:
- Google and GitHub OAuth buttons initiate the correct OAuth authorization flow
- On successful OAuth callback, users are logged in and redirected to
/dashboard
- On failure, a clear error message is displayed
Tasks:
- Implement Google OAuth: create
src/app/api/auth/google/route.ts and src/app/api/auth/google/callback/route.ts
- Implement GitHub OAuth analogously, following the existing Discord pattern in
src/app/api/auth/discord/
- Wire up button
onClick to redirect to the respective OAuth authorization URL
- Mirror error handling and verification flow from the Discord implementation
Impacted Files:
src/app/(auth)/login/page.tsx
src/app/(auth)/signup/page.tsx
src/app/api/auth/google/ (new)
src/app/api/auth/github/ (new)
Acceptance Criteria
- Clicking the Google button redirects to Google's OAuth consent screen
- Clicking the GitHub button redirects to GitHub's authorization page
- Successful OAuth callback creates a session and redirects to
/dashboard
- Failed OAuth shows a user-friendly error
Overview
src/app/(auth)/login/page.tsxandsrc/app/(auth)/signup/page.tsxrender Google and GitHub social login buttons with noonClickhandlers. Clicking them does nothing. Users who expect social sign-in are silently failed. Either the buttons should be wired to OAuth flows or removed until the feature is ready.Specifications
Features:
/dashboardTasks:
src/app/api/auth/google/route.tsandsrc/app/api/auth/google/callback/route.tssrc/app/api/auth/discord/onClickto redirect to the respective OAuth authorization URLImpacted Files:
src/app/(auth)/login/page.tsxsrc/app/(auth)/signup/page.tsxsrc/app/api/auth/google/(new)src/app/api/auth/github/(new)Acceptance Criteria
/dashboard