A real-time chat application using FastAPI and WebSockets that allows users to connect with a random partner based on common tags, send messages, and disconnect.
- WebSocket Connection: Real-time communication between users.
- Tag-Based Matching: Users can add tags, and the app tries to match users with common tags.
- Auto Reconnect: Automatically reconnect when a partner disconnects.
- Geo-location and Browser Info: Logs user's location and browser information based on their IP.
- Backend: FastAPI, WebSockets, Python 3.10+
- Frontend: HTML, CSS, JavaScript
- WebSocket Server: Handles real-time communication between clients.
- Python 3.10+
- FastAPI for the backend API.
- Uvicorn for running the ASGI server.
- requests for IP geolocation fetching.
-
Clone the repository to your local machine:
git clone https://github.com/rishabh10gpt/chatter.git cd chatter -
pip install -r requirements.txt
-
uvicorn app.main:app --reload