┌─────────────────────────────────────┐
┌─────────────────┐ │ Real-Time Data / Chat Server │
│ React Client │ │ (Node.js/Socket.io, Possibly WebRTC)│
└─────────────────┘ └────────────────▲─────────────────────┘
▲ (events)
│ (messages)
│
▼
┌─────────────────┐ REST/GraphQL ┌───────────────────┐
│ Swift (iOS) │ <────────────────────>│ Node.js/Express │
└─────────────────┘ │ (Business Logic) │
└───────────────────┘
│
PostgreSQL / Redis
│
External Crypto APIs
• Clients (React + iOS) maintain persistent connections (WebSockets) with a Node.js Socket.io layer.
• Voice/video rely on WebRTC for peer-to-peer communication and a signaling server (Socket.io) for session negotiation.
• Market data updates flow in from external APIs (Binance, CoinGecko, etc.) and are broadcast to connected clients.