987 B
ADR-022: Real-time Notification System
Date: 2025-12-12
Status: Proposed
Context
A core feature is providing "Active Deal Alerts" to users. The current HTTP-based architecture is not suitable for pushing real-time updates to clients efficiently. Relying on traditional polling would be inefficient and slow.
Decision
We will implement a real-time communication system using WebSockets (e.g., with the ws library or Socket.IO). This will involve an architecture for a notification service that listens for backend events (like a new deal from a background job) and pushes live updates to connected clients.
Consequences
Positive: Enables a core, user-facing feature in a scalable and efficient manner. Significantly improves user engagement and experience. Negative: Introduces a new dependency (e.g., WebSocket library) and adds complexity to the backend and frontend architecture. Requires careful handling of connection management and scaling.