Name-Gopal Bansal
University-Indian Institute of Technology, Ropar
Department-Computer Science and Engineering
Welcome to the Messaging App repository! This is a full-stack messaging application built using the MERN (MongoDB, Express, React, Node.js) stack. The app provides a variety of features to facilitate personal and group communication, as well as video calling functionality. It also includes secure user authentication and boasts an interactive user interface for a seamless messaging experience.
-
Personal Chat Feature: Users can have one-on-one conversations with other online users in real-time.
-
Group Chat Feature: Engage in group discussions with multiple online users. Create, join, and chat in different groups.
-
Video Call Feature: Create video call rooms and invite online users to join you in real-time video conversations.
-
Login and Register: A fully authenticated system for user registration and login to ensure secure access to the app's features.
-
Interactive UI: The app offers an intuitive and interactive user interface, making it easy to navigate and enjoy a seamless messaging experience.
-
Frontend: React.js, Redux (for state management), WebRTC (for video calling), Material-UI (for UI components)
-
Backend: Node.js, Express.js, Socket.io (for real-time communication), MongoDB (for database)
To run the app locally, follow these steps:
- Clone this repository to your local machine:
git clone https://github.com/your-username/messaging-app.git
2.Navigate to the project directory:
cd messaging-app
3.Install dependencies for both the server and client:
Copy code
cd api
npm install
cd ../client
npm install
cd ../server2
npm install
4.Start the Servers
cd ../api
node index.js
cd ../server2
node index.js
5.Start the client
cd ../client
npm run dev
6.Open your web browser and visit http://localhost:3000 to use the Messaging App. 7.To Login As Another User Visit the Same Link On Another Web Browser or in incognito Mode. 8.In the Deployed version the users Can Login from Any device.
To deploy this application to a production environment, you can use cloud platforms like AWS, Heroku, or Vercel. Be sure to configure environment variables and set up a production-ready database.