π¬ Real-Time Chat & File Sharing Web App
A real-time messaging web application where users can chat instantly and share documents, photos, and videos. Built to provide fast communication with a clean UI and secure backend APIs.
β¨ Key Features
β Authentication
Sign Up / Login
Secure password hashing
JWT based authorization
β Real-Time Chat
Instant message sending & receiving
Messages update live without page refresh
β File Sharing
Send Images π·
Send Videos π₯
Send Documents π
Upload and share files inside chat
β Chat Experience
Message ordering with timestamps
Smooth and responsive UI
Works on desktop and mobile
π Tech Stack
Frontend: React.js
Backend: Node.js, Express.js
Database: MongoDB (Mongoose)
Real-Time: Socket.IO
Auth: JWT + Bcrypt
π Project Structure project/ βββ client/ # React frontend βββ server/ # Node + Express backend βββ README.md
βοΈ Setup & Run Locally
- Clone Repo
- git clone https://github.com/your-username/project-name.git cd project-name
- Backend Setup cd server npm install npm start
- Frontend Setup cd ../client
npm install
npm run dev
π Environment Variables
Create .env inside server/:
PORT=5000
MONGO_URI=your_mongodb_connection_string
JWT_SECRET=your_secret_key
π₯ Real-Time Functionality
Real-time messaging is handled using Socket.IO, enabling:
Instant message delivery
Live updates between users
π Security Notes
Passwords stored using bcrypt hashing
Auth handled using JWT
Environment secrets stored inside .env
π¨βπ» Author
Tushar Khadde
GitHub: https://github.com/Tusharkhadde
LinkedIn: https://www.linkedin.com/in/tushar-khadde-192618342/