A scalable real-time messaging system built using Socket.IO, Redis (Pub/Sub), Kafka, and PostgreSQL, designed to support distributed servers with reliable message delivery and persistent chat history. Managed with TurboRepo for monorepo orchestration and optimized development workflows. Hosted using Aivenβs managed services.
This project follows a monorepo structure using TurboRepo to manage the different parts of the system efficiently. TurboRepo enables:
β
Tech | Purpose |
---|---|
TurboRepo | Monorepo management & task orchestration |
Socket.IO | Real-time communication (WebSocket) |
Redis (Aiven) | Pub/Sub for syncing distributed servers |
Kafka (Aiven) | Reliable, fault-tolerant message streaming |
PostgreSQL | Persistent chat storage |
Node.js | Kafka consumer, socket server logic |