Skip to content

utkarshgupta04092003/chatapp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 

Repository files navigation

EaseChat - Realtime Chat Application

EaseChat is a real-time chat application built using React for the frontend, Express for the backend, MongoDB for data storage, and Socket.io for real-time communication. It provides users with a seamless chatting experience where they can interact with each other in real-time. EaseChat offers personalized chats with registered users and enables the creation of chat groups where members can engage in group conversations.

Table of Contents

  1. Introduction
  2. Prerequisites
  3. Installation
  4. Usage
  5. Technologies Used
  6. Screenshots
  7. License

Prerequisites

Before running EaseChat, ensure that you have the following prerequisites installed on your system:

  • Node.js
  • npm (Node Package Manager)
  • MongoDB

Installation

Follow these steps to install and run EaseChat on your local machine:

  1. Clone the repository:
git clone https://github.com/utkarshgupta04092003/chatapp
  1. Navigate to the project directory:
cd chatapp
  1. Install dependencies for both frontend and backend:
cd frontend
npm install

cd ..
cd backend
npm install
  1. Configure MongoDB:

    • Make sure MongoDB is installed and running on your system or You are using Mongo cloud.
    • Update the MongoDB connection URL in the backend configuration file if necessary.
  2. Setup env file:

    • Inside the backend folder create a .env file and fill in the proper details
PORT = 5000
DB_Name = DB_NAME
DATABASE_URI = YOUR_MONGODB_CLOUD_URL
  1. Run the application:
cd  frontend
npm run dev

cd..

cd backend
npm start
  1. Open your web browser and navigate to http://localhost:5173 to access EaseChat.

Usage

  • Upon opening the application, users can sign up or log in to their accounts.
  • Once logged in, users can personalize chats with registered users by searching for their usernames.
  • Users can also create new chat groups and add registered members to the group.
  • In the chat groups, members can send and receive messages in real-time.
  • The application supports features such as emoji reactions.

Technologies Used

  • Frontend: Vite, React.js, Socket.io-client
  • Backend: Express.js, Socket.io, MongoDB
  • Database: MongoDB
  • Deployment: Render (for backend), Netlify (for frontend)

Screenshots

SignUp Page

image

Personal Chats

image

Chatroom Chats

image

Contributions

Feel free to contribute to this repo.

License

This project is licensed under the MIT License - see the LICENSE file for details.

About

Feel free to use and contribute to this project

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages