A real-time chat application built with Node.js, Express, and Socket.io. It supports typing indicators, private messaging, and live user list management.
- π Real-time Messaging: Instantly send and receive messages as soon as they are typed, ensuring a smooth and fast chat experience.
- βοΈ Private Messaging: Send private messages to specific users, keeping conversations confidential and separate from the main chat.
- π₯ Live User List: See who is currently online and participating in the chat, with real-time updates of the active users.
- β¨οΈ Typing Indicators: View when other users are typing, allowing you to know when someone is preparing a message.
- π Timestamped Messages: Every message is automatically timestamped using Moment.js, giving context to when a message was sent.
- Frontend: HTML, CSS, JavaScript.
- Backend: Node.js, Express, Socket.io.
- Utilities: Moment.js for timestamps.
Ensure you have the following installed:
- Node.js (v16 or later)
- npm (comes with Node.js)
- Clone the repository:
git clone https://github.com/DharminJoshi/DChat-Real-time-chat-App-By-DevKay.git
- Navigate to the project directory:
cd DChat-Real-time-chat-App-By-DevKay
- Install dependencies:
npm install
- Start the server:
npm start
- Open your browser and navigate to:
http://localhost:8000
To get started with DChat-Real-time-chat-App-By-DevKay, follow these steps to engage in the chat and make full use of the app's features.
- Upon loading the app, you'll be prompted to enter your name. This helps personalize your experience and allows other users to know who's chatting.
- Once you've entered your name, you'll be taken to the main chat interface where you can start interacting with others.
- Start typing messages in the input field at the bottom of the screen.
- As you type, your messages are instantly sent to the chat and displayed in real time for all participants.
- You can freely chat with everyone in the main chatroom, or use private messaging for more personal conversations.
- To send a private message to a specific user, simply type the following command in the message box:
/p <username> <message>
- Replace
<username>
with the person's name (make sure it's accurate) and<message>
with your message. - Private messages are only visible to the recipient, allowing you to have confidential conversations without everyone in the room seeing them.
- The app will display a live user list on the sidebar (or a dedicated section depending on your layout), showing all the active participants in the chat.
- The list updates automatically as people join or leave, so you always know whoβs online and participating in the conversation.
- While chatting, you will notice typing indicators that show when someone else is typing a message.
- This feature helps keep the chat engaging by letting you know when others are actively participating in the conversation.
- Every message you send will automatically have a timestamp next to it, showing the exact time the message was sent. This is particularly useful for tracking conversations in active chats or when discussing time-sensitive topics.
- With the real-time updates, instant messaging, and user-friendly interface, you can enjoy smooth and uninterrupted conversations.
- The app also supports both mobile and desktop devices, ensuring you can keep chatting no matter where you are.
DChat-RealTime-Chat-App/
βββ client/
β βββ css/
β β βββ style.css # Styles for the client-side UI
β βββ js/
β β βββ client.js # Main client-side JavaScript
β βββ index.html # Main HTML page
βββ index.js # Server-side code
βββ README.md # Detailed description of the project
βββ LICENSE # License file
βββ package.json # Dependencies and scripts
βββ package-lock.json # Dependency tree lock file
βββ CONTRIBUTING.md # Guidelines for contributing to the project
We welcome contributions! Please follow these steps:
- Fork the repository.
- Create a new branch for your feature or bug fix:
git checkout -b feature/your-feature-name
- Commit your changes:
git commit -m "Add your descriptive message here"
- Push to your branch:
git push origin feature/your-feature-name
- Open a pull request and describe your changes.
For more details, see the CONTRIBUTING.md file.
We are actively working on new features to improve DChat-Real-time-chat-App-By-DevKay:
- OAuth2 Authentication: Enable secure user login through Google, Facebook, and more.
- MongoDB Integration: Store chat history and user data in a scalable database.
- User Profiles: Add personalized profiles for each user.
- Media Sharing: Allow users to share images, videos, and files.
- Theme Customization: Provide light/dark mode and customizable themes.
This project is licensed under the Creative Commons Attribution-NonCommercial 4.0 International License (CC BY-NC 4.0). You are free to share, adapt, and modify the project for non-commercial purposes, provided that you give appropriate credit to the original creator (Dharmin Joshi/DevKay). Commercial use of this project is not permitted.
For more details, see the full license: Creative Commons Attribution-NonCommercial 4.0 International License.
This project, DChat-Real-time-chat-App-By-DevKay, is intended for educational and personal use only. All content, including code, images, and resources, are used under the principle of fair use. The project is a non-commercial, open-source endeavor created for learning purposes and is not associated with any official or commercial entity.
All trademarks, logos, and brand names mentioned or used in this project are the property of their respective owners. This project does not claim ownership of any of these trademarks, logos, or brand names.
The project is provided "as is" without any warranties, express or implied. The creator of this project is not responsible for any direct or indirect consequences arising from its use.
This project belongs to DharminJoshi/DevKay and is hosted on GitHub.
For any queries, suggestions, or feedback, feel free to reach out:
- Developer: Dharmin Joshi / DevKay
- Email: [email protected]
- LinkedIn: https://www.linkedin.com/in/dharmin-joshi-3bab42232/
- GitHub: https://github.com/DharminJoshi
Thank you for using DChat-Real-time-chat-App-By-DevKay! We hope it makes your chatting experience seamless and enjoyable. π