A real-time chat application.
Welcome to the documentation of our Real-Time Chat Application. This application is built using React.js, Node.js, TypeScript, and Socket.io. It provides real-time messaging features, private chats, user authentication, online status tracking, typing indicators, chat history, adding new contacts, and offline capabilities through PWA.
- Features
- Installation
- Usage
- Authentication
- Private Chats
- Online Status
- Typing Indicators
- Chat History
- Adding Contacts
- Offline Support
- User authentication (Login and Signup) with JWT.
- Real-time private chatting.
- Online status tracking.
- Typing indicators to show when someone is typing.
- Chat history to keep track of your messages.
- Add new people to your contact list.
- Search your contacts.
- Offline working through Progressive Web App (PWA).
- Clone the repository:
git clone https://github.com/thedevshubham/chit-chat.git cd chit-chat - Install server dependencies
npm install - Install client dependencies
npm install - Run the server
npm start - Run the client
npm start
Once you have installed and started the server and client, you can visit the application in your web browser. You can create an account, log in, and start using the chat features.
- Sign up with your details to create an account.
- Log in with your email and password to access your account.
- Click on a contact to start a private chat.
- Send and receive real-time messages.
- View chat history for the conversation.
- Your contacts' online status is displayed.
- Online status is updated in real-time.
- See when a contact is typing a message.
- The application stores chat history for your conversations.
- You can view previous messages.
- Add new people to your contact list.
- Start private chats with your contacts.
- The application works offline using Progressive Web App (PWA).
- You can access your chat history and send messages when offline.
Feel free to contribute to this project and make it even better!
If you encounter any issues or have suggestions for improvements, please create an issue on the GitHub repository.
Enjoy chatting!