Skip to content

Creating a Chat App with React, Socket.io, Express, MongoDB, Redux, TANStack, and Cloudinary

Notifications You must be signed in to change notification settings

sparkz-technology/chat_app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 

Repository files navigation

Creating a Chat App with React, Socket.io, Express, MongoDB, Redux, TANStack, and Cloudinary

Demo Link: Chat App Demo

Table of Contents

  1. Introduction
  2. Features
  3. Usage
  4. Technologies Used

Introduction

This repository contains a chat application built using React, Socket.io, Express, MongoDB, Redux, TANStack, and Cloudinary. This application provides real-time chat functionality with features like typing status and online status. It's designed to be a modern, efficient, and scalable solution for building chat applications.

Features

The chat app comes with the following features:

  1. Real-time Chat: Users can send and receive messages in real-time.
  2. Typing Status: Users can see when someone is typing a message.
  3. Online Status: Users can see the online status of other users.
  4. User Authentication: Users can create accounts and log in securely.
  5. Message History: Chat history is stored in a MongoDB database for easy retrieval.
  6. Profile Photo Upload: Users can upload and display profile photos using Cloudinary.
  7. Responsive UI: The user interface is designed to be responsive and user-friendly.
  8. State Management: Uses Redux for managing UI state and TANStack Query for remote state management.
  9. Scalable: Built with scalability in mind to handle a growing number of users.

Usage

To use the chat application, follow these steps:

  1. Register for an account or log in if you already have one.
  2. Upload your profile photo using Cloudinary.
  3. Start a chat with other users.
  4. Send messages in real-time, see typing status, and online status.
  5. Explore the responsive and user-friendly interface.

Technologies Used

  • React: A JavaScript library for building user interfaces.
  • Socket.io: A library for real-time, bidirectional communication.
  • Express: A fast, unopinionated, and minimalist web framework for Node.js.
  • MongoDB: A NoSQL database for storing chat history.
  • Redux: A state management library for UI state.
  • TANStack Query: A client-side data-fetching and state management library for managing remote state.
  • Cloudinary: A cloud-based image and video management service for handling profile photo uploads.

About

Creating a Chat App with React, Socket.io, Express, MongoDB, Redux, TANStack, and Cloudinary

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published