URL :- https://websockets-chatapp-production.up.railway.app/
Welcome to Hommies 📞, a real-time group chat application built with WebSockets and Socket.io. This project demonstrates the power of WebSockets in creating a dynamic, interactive chat experience with features like typing indicators and real-time user updates.
- Group Chat Functionality: Users can seamlessly send and receive messages within a group.
- Typing Indicators: Provides real-time feedback when someone is typing, enhancing user interaction.
- Dynamic User Updates: Users can join the chat anonymously and update their names. The total client count updates in real-time.
- Bi-Directional Communication: Utilizes WebSockets for full-duplex communication, ensuring smooth data flow between clients and the server.
- Front-End: HTML, CSS
- Back-End: Node.js, Express.js
- Real-Time Communication: WebSockets, Socket.io
- Date and Time Handling: Moment.js
-
Clone the repository:
git clone https://github.com/yourusername/hommies-chat-app.git
-
Navigate to the project directory:
cd hommies-chat-app -
Install the dependencies:
npm install
-
Start the server:
node server.js npm run dev // it contains nodemon
-
Open your browser and navigate to
http://localhost:4000.
- Open the chat application in multiple browser windows or tabs.
- Users can type their names and start sending messages.
- The application will show who is typing in real-time.
- Messages sent will be visible to all connected users.
- public/: Contains static files (HTML, CSS, client-side JavaScript).
- server.js: Main server file.
- package.json: Node.js dependencies and scripts.
We welcome contributions! Please follow these steps:
-
Fork the repository.
-
Create a new branch:
git checkout -b feature-branch
-
Make your changes and commit them:
git commit -m "Description of your changes" -
Push to your branch:
git push origin feature-branch
-
Open a pull request on GitHub.
- Thanks to the creators of Socket.io and Moment.js for their excellent libraries.
For any questions or suggestions, please feel free to open an issue or contact me at prateekthofficial789@gmail.com.