/Chat-App

Primary LanguageJavaScript

Chat App

Connect with your circle in fun way! Chat App makes your communication with relatives, work friends, family more fun. Stay connected with them with plentiful features.

Features:

  • Advanced User Authentication with Email Verification, Forgot Password, Update Password, Email Change Verification and One Time Validity Verification Tokens apart from basic Login and Register.
  • User can update his/her profile details.
  • User can access new chats.
  • One-to-One(2 people) and One-to-Many(Group) conversation feature and real-time messaging with socket rooms.
  • Server Side Filtering with search bars based on user name, user email.
  • Multiple Group Admins, Group Creator is default admin and can appoint other users of the group as admins.
  • Add new user to group, remove user from existing group, updating group name, adding and removing of group admins are accessible features for a group admin.
  • Once a user leaves a group/removed by admin from group that group chat and messages are no more accessible to that particular user.
  • All Messages with Timestamps.
  • Live Typing feature.
  • Online/Offline users feature to let other users know if the user they're chatting with is online or went offline.
  • Notification Feature on receiving new messages.
  • Persistent Storage for user chats and messages.

Backend Schema Diagram:

image

Tech Stack Used:

Front-End:

React Redux Bootstrap Ant Design Badge Chakra UI

Back-End:

NodeJS ExpressJS Mongoose JWT JWT

Database:

MongoDB

Deployed Version:

https://chat-app-krc2.onrender.com

Demonstration:

image image image image image image Live Group notification