Welcome to the GitHub repository for ub-chats, an Online Chatting and Audio/Video Calling Web App built with the MERN stack. This platform utilizes WebSockets and WebRTC for real-time communication and Firebase for user authentication.
Demo Gif.
-
User Login and Registration: ub-chats provides a secure user authentication system powered by Firebase. Users can log in or register for an account.
-
Real-time Messaging: Enjoy seamless real-time text messaging with your contacts, making communication quick and efficient.
-
Audio and Video Calling: Connect with friends and family through high-quality audio and video calls right from your browser.
-
Private Chats: Start private conversations with individual contacts for more personal interactions.
-
Search by Email: Easily find and connect with people by searching for their email addresses.
-
MERN Stack: ub-chats is built using MongoDB, Express.js, React.js, and Node.js for a robust and scalable web application.
-
WebSockets: Real-time chat and notifications are powered by WebSockets, ensuring instant message delivery.
-
WebRTC: Enjoy seamless audio and video calls through WebRTC for low-latency and high-quality communication.
-
Firebase Authentication: Firebase provides secure and reliable user authentication and management.
Here are some screenshots of the ub-chats Web App:
Check out the live demo of ub-chats at: ub-chats Live Demo
📝 Note: You may have to wait a few minutes for the server to start when visiting the website for the first time, as the server on render goes down after 15 minutes of inactivity.
To get started with ub-chats, follow these steps:
- Clone the repository:
git clone https://github.com/your-username/ub-chats.git
- Navigate to the project directory:
cd ub-chats
- Set up environment variables: Create a
.env
file in the client and server directory and add the necessary environment variables for MongoDB, Firebase, and any other configurations. - Navigate to the server directory:
cd client
- Install server dependencies:
npm install
- Run the server:
npm run dev
- Navigate to the client directory:
cd client
- Install client dependencies:
npm install
- Run the client:
npm run dev
- Return to the project directory:
cd ..
ub-chats is deployed on Render. To deploy your own instance of the web app, follow these steps:
- Sign up for an account on Render if you don't already have one.
- Create a new web service on Render.
- Connect your Render web service to your GitHub repository.
- Configure the necessary environment variables on Render for MongoDB, Firebase, and any other dependencies.
- Deploy your application to Render, and it will provide you with a live deployment link.
ub-chats is licensed under the MIT License.
Feel free to explore and enhance the ub-chats Online Chatting and Audio/Video Calling Web App! If you have any questions or encounter any issues, please don't hesitate to reach out.