ChitChat is a modern, real-time chat application built with React, designed for seamless and interactive communication. Connect with friends, family, and colleagues through an intuitive and customizable platform.
- Real-Time Messaging: Enjoy smooth and instantaneous messaging for uninterrupted conversations.
- User-Friendly Interface: Navigate easily with an intuitive design that makes communication straightforward and fun.
- Customizable Themes: Personalize your chat experience with a variety of themes and colors.
- Group Chats: Create and join group chats to stay connected with multiple contacts at once.
- Media Sharing: Share images, videos, and files quickly and effortlessly.
- Notifications: Stay updated with notifications that alert you of new messages and activities.
- Privacy and Security: Experience secure messaging with end-to-end encryption to protect your data and conversations.
- React: For building the user interface.
- Redux: For managing application state.
- Node.js & Express.js: Backend framework for handling API requests and server operations.
- Socket.io: Powers real-time, bidirectional communication between the client and server.
- MongoDB: Database used for storing user data and chat logs.
- Bootstrap/Tailwind CSS: For creating a responsive and aesthetically pleasing design.
Follow these instructions to set up the ChitChat application on your local machine.
- Node.js (v14 or higher)
- npm (v6 or higher)
- MongoDB
-
Clone the repository:
git clone https://github.com/EshuTpmar/ChitChat.git
-
Navigate to the project directory:
cd chitchat -
Install dependencies for both frontend and backend:
npm install cd client npm install cd ..
-
Start the backend server:
npm run start:server
-
Start the frontend client:
cd client npm start -
Open your browser and visit:
http://localhost:3000
- Sign Up/Login: Create an account or log in with your existing credentials.
- Start a Chat: Search for a user or select from the list to start chatting.
- Create a Group: Navigate to the group chat section and create a new group.
- Customize Theme: Access settings to change the theme of the application.
- Send Media: Click on the media icon to upload and send images or videos.
- Video and Voice Calls: Integrating video and voice call functionality for more comprehensive communication.
- Advanced Search: Implementing powerful search capabilities to find messages and media quickly.
- Language Support: Expanding to include multiple languages for a more inclusive user experience.
- Desktop and Mobile Apps: Developing native apps for different platforms.
Contributions are welcome! Please follow these steps to contribute:
- Fork the repository.
- Create a new branch:
git checkout -b feature-name - Make your changes and commit them:
git commit -m 'Add some feature' - Push to the branch:
git push origin feature-name - Open a pull request.
Thank you for using ChitChat! We hope you enjoy your chat experience.
