UmbraChat
A full-stack real-time messaging application built with Next.js on the frontend and NestJS on the backend, using PostgreSQL for message persistence and WebSockets for low-latency, bidirectional communication. It supports public and private chat rooms, conversation threads, and online presence detection.
Key Challenges
- Designing a message threading system that organizes replies in a hierarchical structure.
- Optimizing PostgreSQL queries for fast message retrieval across large conversation histories.
- Building real-time typing indicators and presence tracking without flooding the WebSocket connection.