Skip to content

bartwo21/chat-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 

Repository files navigation

Chat Application

This project is a real-time chat application where users can log in, register, and chat with online users. The application is developed using Node.js, Express, MongoDB, and WebSocket.

Live Demo

Live Demo (First login or registration may take up to 1 minute)

Features

  1. Login and Registration

    • Users can log in or register.
    • Login and registration controls are in place.
  2. Chat Page

    • Users can see online and offline users.
    • Sending and receiving messages is possible.
  3. WebSockets

    • WebSocket is used for real-time messaging.
    • Online status of users is updated instantly.
  4. Show Who's Online

    • Online users are shown in green.
    • Offline users are listed as well.
  5. Selecting a Conversation

    • Users can select the person they want to chat with.
  6. Sending Messages

    • Users can send messages and receive incoming messages.
  7. Automatically Scroll Chat Window

    • The chat window is automatically scrolled when a new message is sent or received.
  8. Fetching Historical Messages from Database

    • Users can view their past messages with the selected user.
  9. Online Indicator and Showing Offline Users

    • Online users are displayed in green, and offline users are displayed in gray.

Usage

  1. Login and Registration:

    • You can log in with a username and password or create a new account on the homepage.
  2. Chat:

    • Select a user from the online users list.
    • Send messages and see incoming messages.

Technologies

  • Frontend: React, Tailwind CSS
  • Backend: Express.js
  • Database: MongoDB
  • Real-Time Communication: WebSocket