Skip to content

Lakshya-Saini/ChatUs-App

Repository files navigation

Chat Application

Working

ChatUs is a chat application with variety of features. It allows users to have group chat as well as 1-1 chat with their friends.

It is an ongoing project, more features will be added in upcoming versions.

Features:

  1. Add Group (with join key)
  2. Search Recently Created Groups
  3. Join Group (with join key)
  4. Group Chat
  5. Delete Chat
  6. Delete Group
  7. Exit Joined Group
  8. Send Emojis
  9. Search Friends (with Reg No. or Name)
  10. Send Friend Request
  11. Accept or Decline Friend Request
  12. Friend Chat (with privacy)
  13. Delete Chats
  14. Block Friend
  15. Typing Indicator In Friend Chat
  16. Real Time Messages
  17. Passport-JWT Authentication
  18. Phone Number Verification
  19. Real Time Notifications
  20. Individual Socket Connection For Every Chat

Upcoming Features:

  1. View Friend & Group Profile
  2. Share Images, Audio & Docs
  3. Typing Indicator In Group Chats
  4. Mobile Responsiveness
  5. Friend or Group Member Online Indicator
  6. Unread Messages
  7. Offline Support
  8. Push Notifications

How to use

  1. Clone this repository or simply download all files.
git clone https://github.com/Lakshya-Saini/ChatUs-App.git
  1. Install dependencies in root (server) and in client as well
npm i
cd client && npm i
  1. Create a .env file in root
mkdir .env
  1. Copy these varibles in .env file
CLOUDINARY_NAME=
CLOUDINARY_API_KEY=IFi28p7PFiizmPj_c9cNBLUH_kU
SECRET_OR_KEY=
MSG91_API_KEY=
  1. Now to run app, run this script
npm run dev

Tech Stack

  1. React
  2. Node
  3. Express
  4. MongoDB
  5. Socket.io
  6. Cloudinary
  7. MSG91

Also this project is open to everyone. If you have some ideas or features you can develop or even can modify the existing ones in a better way, just create a pull request and you can become a contributor.