Flow Application Screenshot
ABOUT THE PROJECT

A full-stack real-time chat app with WebSocket-based messaging, unique room invite codes, and Google OAuth via NextAuth.js.

WHY I BUILT THIS

Wanted to understand how real-time systems work under the hood, so I built one from scratch.

CORE FEATURES
  • ✔ Real-time instant message delivery
  • ✔ Room subscriptions and typing indicators
  • ✔ Google OAuth via NextAuth.js
  • ✔ TurboRepo monorepo with shared Prisma package
SYSTEM ARCHITECTURE
  • ⚙ WebSocket server handles real-time bidirectional events
  • ⚙ Next.js frontend with Zustand for client state
  • ⚙ Prisma ORM over PostgreSQL for message persistence
  • ⚙ TurboRepo monorepo — frontend, backend, shared db package
TECHNOLOGY STACK
Next.jsNext.js
TypeScriptTypeScript
Node.jsNode.js
ExpressExpress
PostgreSQLPostgreSQL
PrismaPrisma