Skip to content

crab-97/ChatRoom-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

1 Commit
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

✨ Full-Stack Chat App with Auth & Emails ✨

Highlights:

  • πŸ” Custom JWT Authentication (no 3rd-party auth)
  • ⚑ Real-time Messaging via Socket.io
  • 🟒 Online/Offline Presence Indicators
  • πŸ”” Notification & Typing Sounds (with toggle)
  • πŸ“¨ Welcome Emails on Signup (Resend)
  • πŸ—‚οΈ Image Uploads (Cloudinary)
  • 🧰 REST API with Node.js & Express
  • 🧱 MongoDB for Data Persistence
  • 🚦 API Rate-Limiting powered by Arcjet
  • 🎨 Beautiful UI with React, Tailwind CSS & DaisyUI
  • 🧠 Zustand for State Management
  • πŸ§‘β€πŸ’» Git & GitHub Workflow (branches, PRs, merges)
  • πŸš€ Easy Deployment (free-tier friendly with Sevalla)

πŸ§ͺ .env Setup

Backend (/backend)

PORT=3000
MONGO_URI=your_mongo_uri_here

NODE_ENV=development

JWT_SECRET=your_jwt_secret

RESEND_API_KEY=your_resend_api_key
EMAIL_FROM=your_email_from_address
EMAIL_FROM_NAME=your_email_from_name

CLIENT_URL=http://localhost:5173

CLOUDINARY_CLOUD_NAME=your_cloudinary_cloud_name
CLOUDINARY_API_KEY=your_cloudinary_api_key
CLOUDINARY_API_SECRET=your_cloudinary_api_secret

ARCJET_KEY=your_arcjet_key
ARCJET_ENV=development

πŸ”§ Run the Backend

cd backend
npm install
npm run dev

πŸ’» Run the Frontend

cd frontend
npm install
npm run dev

About

A full-stack real-time chat application built with React, Node.js, Express, MongoDB, Socket.io, and Tailwind.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors