This is a realtime chat application that supports private and group chats using websockets. It also integrates authentication using the Clerk API.
- Frontend: Vite, React, Material-UI, Socket.IO client
- Backend: Node.js, Express, Socket.IO, WebSocket
- External API: Binance WebSocket API
client
: Contains the Vite/React code for the frontend UI.server
: Contains the Express server files.chat
: Handles chat functionality, including sending and receiving data between clients and the server.express-server
: Contains files for the Express server.web-socket
: Manages real-time WebSocket stream data from the Binance WebSocket API.
- Clone the repository.
- Install dependencies for the frontend:
cd client npm install npm run dev
- Install dependencies for the backend:
cd ../ npm install npm start
- Open the application in your browser at
http://localhost:5173
.
- Register or login using Clerk API authentication.
- Start chatting in private or group chats.
- Real-time updates are handled through Socket.IO and WebSocket.