Skip to content

ShadowChat is a real-time chat app built with the MERN stack, featuring instant messaging, online presence, and a clean, responsive UI. Powered by Socket.io and MongoDB for fast, reliable communication, it provides a flexible, customizable foundation for modern messaging applications.

Notifications You must be signed in to change notification settings

Luv-valecha/ShadowChat

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

62 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ShadowChat

ShadowChat is a real-time MERN Stack chat application designed for secure and seamless communication. Built using modern web technologies, it provides an intuitive user experience with collaborative code rooms and AI generated smart replies.

Features

  • 🟢 Real-time Messaging - Chat with users instantly.
  • 🤖 Smart Replies (powered by Google Gemini) – Suggests smart responses to keep conversations flowing smoothly.
  • 🎨 User-Friendly Interface - Minimalistic and easy to navigate.
  • 📂 Media Support - Send and receive images.
  • 🌍 Online Status - See when users are active.
  • 🔐 Role Based Access - Admins have access to daily stats.
  • 👥 Collaborative Code Rooms - Code rooms which different users can join and code together in real-time.

Tech Stack

  • Frontend: React.js, Tailwind CSS, Daisy UI
  • Backend: Node.js, Express.js
  • Database: MongoDB
  • Caching: Redis
  • Real-time Communication and Code Rooms: Socket.io
  • Deployment: Render

Installation

Prerequisites

  • Node.js (v16 or later)
  • MongoDB (local or cloud instance)

Setup

  1. Clone the Repository

    git clone https://github.com/Luv-valecha/ShadowChat.git
    cd ShadowChat
  2. Install Dependencies

    npm install
  3. Set Up Environment Variables Create a .env file in the root directory and configure the following:

    MONGO_URI=your_mongodb_connection_string
    JWT_SECRET=your_jwt_secret
    SOCKET_PORT=5000
  4. Run the Server

    npm run server
  5. Run the Frontend

    cd client
    npm start

Usage

  1. Sign up or log in to your account.
  2. Start a conversation with friends.
  3. Enjoy real-time chat!

Deployment

The application is deployed on Render.

Documentation

The Project Report is uploaded in the github: Project_Report

Contributing

  1. Fork the repository.
  2. Create a new branch: git checkout -b feature-branch
  3. Commit your changes: git commit -m 'Add new feature'
  4. Push to the branch: git push origin feature-branch
  5. Submit a Pull Request.

License

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

Contact

For any issues or suggestions, feel free to contact Luv Valecha, Dheeraj Kumar or Arafat Ahmad Sheikh.

About

ShadowChat is a real-time chat app built with the MERN stack, featuring instant messaging, online presence, and a clean, responsive UI. Powered by Socket.io and MongoDB for fast, reliable communication, it provides a flexible, customizable foundation for modern messaging applications.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •