A modern, production-ready task management web application with secure authentication, cloud database integration, and full deployment to the internet.
🌐 Live Application:
Frontend → https://productivity-hub-blue.vercel.app
Backend API → https://productivity-hub-swj0.onrender.com
- 🔐 Secure JWT Authentication (Register / Login)
- ☁ MongoDB Atlas Cloud Database
- 📝 Create, Edit, Delete Tasks
- ✅ Mark Tasks as Complete
- 🔍 Search & Filter (All / Active / Completed)
- 🎯 Priority Levels (Low / Medium / High)
- 📅 Due Date Support
- 🌙 Dark Mode
- 🔄 Drag & Drop Reordering
- 🚀 Fully Deployed (Vercel + Render)
- React (Vite)
- TailwindCSS
- Framer Motion
- Axios
- Lucide Icons
- Node.js
- Express.js
- MongoDB Atlas
- Mongoose
- JWT Authentication
- CORS Middleware
- Custom Error Handling
- Frontend: Vercel
- Backend: Render
- Database: MongoDB Atlas
productivity-hub/
│
├── client/ # Frontend (React + Vite)
│ ├── src/
│ └── package.json
│
├── server/ # Backend (Express + MongoDB)
│ ├── src/
│ │ ├── controllers/
│ │ ├── models/
│ │ ├── routes/
│ │ ├── middleware/
│ │ └── config/
│ └── package.json
│
└── README.md
- User registers with email & password
- Password securely hashed
- JWT token generated
- Token stored client-side
- Protected routes validated via middleware
PORT=10000
MONGO_URI=your_mongodb_connection_string
JWT_SECRET=your_secure_secret_key
CLIENT_URL=your_frontend_url
VITE_API_URL=your_backend_url/api
npm run install:allcp server/.env.example server/.envUpdate .env values.
npm run dev:servernpm run dev:clientPOST /api/auth/registerPOST /api/auth/login
GET /api/todosPOST /api/todosPUT /api/todos/:idDELETE /api/todos/:idDELETE /api/todos/completed/allPATCH /api/todos/reorder
- Full-stack architecture design
- Cloud database integration
- JWT authentication implementation
- Production deployment workflow
- CORS configuration in real-world environment
- Environment variable management
- Debugging production issues
Ansh Tripathi
BTech CSE (AI/ML)
Full-Stack & AI Enthusiast 🚀
This project is licensed under the MIT License.