This project is a feature-rich chat application designed to facilitate seamless real-time communication between users. Built with modern web technologies, the application provides a robust and user-friendly platform for chatting, user management, and status updates which can be accessed here.
- Login: Secure login functionality for existing users.
- Signup: Easy registration process for new users.
- Search Functionality: Search for other users within the application.
- Online Status: View the online status of users to know their availability.
- Real-Time Communication: Instant messaging with real-time updates using WebSocket technology.
-
Clone the Repository:
git clone https://github.com/Madhav160804/chat-app.git cd chat-app
-
Install Dependencies:
- Navigate to the frontend and install dependencies:
cd frontend npm install
- Navigate to the backend and install dependencies:
cd backend npm install
- Navigate to the frontend and install dependencies:
-
Environment Variables:
- Create a
.env
file in the backend directory and configure your MongoDB URI, JWT secret, and other necessary environment variables. Example.env
file:
PORT=3000
- Create a
MONGO_DB_URI={YOUR_MONGO_DB_CONNECTION_STRING} JWT_SECRET = {YOUR_JWT_SECRET} NODE_ENV = development ```
- Run the Application:
- Start the backend server:
cd backend node server.js
- Start the frontend development server:
cd frontend npm run dev
- Start the backend server:
Once the application is up and running, users can sign up, log in, search for other users, see who is online, and start chatting in real-time.
Contributions are welcome! Please fork the repository and create a pull request with your changes.
- Add firebase authentication to verify email
- Send attachments in a message
- Refresh the users list when a new user signs up
- Sort users by recent messages at top
- User account dropdown menu
- Update password
- Change profile picture
- Friend network
- Chat Rooms