Skip to content

Madhav160804/chat-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Chat App Project

Overview

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.

Features

User Authentication

  • Login: Secure login functionality for existing users.
  • Signup: Easy registration process for new users.

User Interaction

  • 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.

Technologies Used

Frontend

  • React: React
  • Vite: Vite

Backend

  • Node.js: Node.js
  • Express: Express

Real-Time Communication

  • Socket.io: Socket.io

Database

  • MongoDB: MongoDB

Authentication

  • JWT (JSON Web Tokens): JWT

Setup and Installation

  1. Clone the Repository:

    git clone https://github.com/Madhav160804/chat-app.git
    cd chat-app
  2. Install Dependencies:

    • Navigate to the frontend and install dependencies:
      cd frontend
      npm install
    • Navigate to the backend and install dependencies:
      cd backend
      npm install
  3. 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

MONGO_DB_URI={YOUR_MONGO_DB_CONNECTION_STRING} JWT_SECRET = {YOUR_JWT_SECRET} NODE_ENV = development ```

  1. Run the Application:
    • Start the backend server:
      cd backend
      node server.js
    • Start the frontend development server:
      cd frontend
      npm run dev

Usage

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.

Contributing

Contributions are welcome! Please fork the repository and create a pull request with your changes.

Future planned features and improvements:-

  • 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

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published