Skip to content

feat(fe-32/33/36): Google+Microsoft OAuth, OAuth callback, messages p…#1265

Merged
yusuftomilola merged 1 commit into
DistinctCodes:mainfrom
lynaDev2:feat/fe-32-33-36-oauth-messaging
Jun 28, 2026
Merged

feat(fe-32/33/36): Google+Microsoft OAuth, OAuth callback, messages p…#1265
yusuftomilola merged 1 commit into
DistinctCodes:mainfrom
lynaDev2:feat/fe-32-33-36-oauth-messaging

Conversation

@lynaDev2

Copy link
Copy Markdown
Contributor

Summary
Implements Google OAuth (FE-32), Microsoft OAuth (FE-33), and the in-app /messages page (FE-36) across the frontend.

Changes

FE-32 — Google OAuth

  • Added `Continue with Google` button to `LoginForm` and `RegisterPage` (Google-branded SVG, white bg per guidelines)
  • Button redirects to `GET /auth/google`
  • Created `/app/(auth)/oauth/callback/page.tsx` — reads `?token=` and `?refreshToken=` from URL, stores in `authStore`, redirects to `/dashboard`; on `?error=`, shows toast and redirects to `/login`
  • Added `--- or ---` divider between OAuth buttons and email/password form

FE-33 — Microsoft OAuth

  • Added `Continue with Microsoft` button below Google button on both auth pages (Microsoft-branded four-square SVG)
  • Button redirects to `GET /auth/microsoft`
  • Reuses the same `/auth/oauth/callback` page created in FE-32

FE-36 — In-app Messaging

  • Created `/app/messages/page.tsx` — classic two-pane layout (thread list left, message thread right)
  • Thread list: avatar, participant name, last message preview, timestamp, unread count badge
  • Message thread: chronological bubbles (own right, others left), sender name, timestamp
  • `New Message` button opens a modal to search members via `GET /community/members?search=`; selecting starts a new thread via `POST /messages/threads`
  • Sending calls `POST /messages/threads/:id/messages` with optimistic UI
  • Real-time: WebSocket `new-message` event appends messages without refresh; unread badge updates live
  • Thread open calls `PATCH /messages/threads/:id/read`
  • Added `Messages` link to `DashboardSidebar` + fixed missing `Lock` import

Acceptance Criteria

  • Google and Microsoft OAuth buttons on login and register pages
  • OAuth callback handles token storage and error redirect
  • `/messages` two-pane layout with thread list and message thread
  • New message modal with member search
  • Optimistic send + WebSocket real-time updates
  • Unread count badge updates in real time
  • Messages link in sidebar

Closes #1218
Closes #1220
Closes #1226"

@vercel

vercel Bot commented Jun 28, 2026

Copy link
Copy Markdown

@lynaDev2 is attempting to deploy a commit to the naijabuz's projects Team on Vercel.

A member of the Team first needs to authorize it.

@drips-wave

drips-wave Bot commented Jun 28, 2026

Copy link
Copy Markdown

@lynaDev2 Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

@yusuftomilola yusuftomilola merged commit 8ca3c10 into DistinctCodes:main Jun 28, 2026
4 of 7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

2 participants