This is a minimal Angular app designed to simulate the customer side of a live chat system. Customers can open the chat interface and communicate in real-time with available support agents using Socket.IO.
This app is integrated with the full customer support backend and is fully dynamic — you don't need to register the customer beforehand.
- Production App: https://ecommerce-chat-angular.vercel.app/
 - Backend API: https://customer-support-node.dinamo-app.com/
 
- 🔐 Chat initiated without login (anonymous or via user ID)
 - 💬 Real-time messaging via Socket.IO
 - 📶 Typing indicator for customers and agents
 - 🚀 Automatically assigns to an available agent
 - 🧠 Smart behavior: If agents are busy/away, the chat is queued
 
Once a customer opens the chat and sends a message:
- The backend checks for available agents.
 - If one is available, the chat is assigned instantly.
 - If no agents are available, chat is marked as new and queued.
 - Customer gets notified when agent responds.
 
- 
Clone the repo:
git clone https://github.com/ZiadGamalDev/ecommerce-chat-angular.git
 - 
Install dependencies:
npm install
 - 
Update
src/environments/environment.tsfor development:export const environment = { production: false, apiUrl: 'http://localhost:3000', socketUrl: 'http://localhost:3000' };
Or use production environment in
src/environments/environment.prod.ts:export const environment = { production: true, apiUrl: 'https://customer-support-node.dinamo-app.com', socketUrl: 'https://customer-support-node.dinamo-app.com' };
 - 
Run the app:
ng serve
 
This chat app connects to the live backend API at: https://customer-support-node.dinamo-app.com/
For local development, make sure to run the backend from: 👉 Customer Support Node Backend
For the complete system overview: 👉 View Root Repository
MIT – plug it into your own e-commerce systems or build on top of it.