A full-stack real-time chat app built with React.js, Node.js, Express.js, MongoDB, and Socket.io, featuring authentication, live messaging, and modern UI.
π Live Demo: https://chat-app-fndy.onrender.com/
π Secure Authentication β JWT + HttpOnly cookies + Samesite π¬ Real-Time Messaging β Powered by Socket.io π User Presence β Online / Offline indicators π¨ Themes Support β Switch between dark & light mode and many more π± Responsive Design β Works on desktop & mobile β‘ Scalable Backend β REST APIs with Express.js βοΈ Deployed β Frontend & backend hosted on Render
Frontend: React.js (Vite), Axios ,TailwindCSS / Shadcn UI, Socket.io-client Backend: Node.js, Express.js, MongoDB + Mongoose, Socket.io, JWT Authentication, bcrypt
Render (Frontend + Backend)
chat-app/
βββ backend/ # Express backend with API + WebSocket server
β βββ src/
β β βββ routes/
β β βββ controllers/
β β βββ models/
β β βββ middleware/
β β βββ index.js
β βββ package.json
β
βββ frontend/ # React frontend
β βββ src/
β β βββ components/
β β βββ pages/
β β βββ store/
β β βββ App.jsx
β βββ package.json
β
βββ README.md
1οΈβ£ Clone the repository git clone https://github.com/your-username/chat-app.git cd chat-app
2οΈβ£ Backend Setup cd backend npm install Create a .env file in backend/ with: PORT=5001 MONGO_URI=your-mongodb-url JWT_SECRET=your-secret-key Start backend: npm run dev
3οΈβ£ Frontend Setup cd frontend npm install Create a .env file in frontend/ with: VITE_API_URL=http://localhost:5001/api Start frontend: npm run dev