A modern full-stack task management application with secure authentication, CRUD operations, search, priority filters and a responsive dashboard.
|
|
|
|
| Layer | Technologies |
|---|---|
| Frontend | React, Vite, React Router, Axios, CSS |
| Backend | Node.js, Express.js |
| Database | MongoDB, Mongoose |
| Authentication | JWT, bcryptjs |
| Deployment | Vercel, Render, MongoDB Atlas |
TaskFlow Dashboard
|
Login Page |
Edit Task |
TaskFlow follows a clean MERN architecture where the React frontend communicates with the Node.js + Express backend through REST APIs, while MongoDB Atlas handles persistent cloud data storage.
┌─────────────────────┐
│ USER │
└──────────┬──────────┘
│
▼
┌─────────────────────┐
│ React + Vite │
│ Frontend │
│ (Vercel) │
└──────────┬──────────┘
│
│ Axios
│ REST API
▼
┌─────────────────────┐
│ Node.js + Express │
│ Backend │
│ (Render) │
└──────────┬──────────┘
│
│ Mongoose
▼
┌─────────────────────┐
│ MongoDB Atlas │
│ Database │
└─────────────────────┘
User
│
│ Register / Login
▼
React Frontend
│
│ POST /api/auth/login
▼
Express Backend
│
│ Verify Credentials
│ Generate JWT
▼
JWT Token
│
│ Stored in Local Storage
▼
Protected Dashboard
│
│ Authorization: Bearer <token>
▼
Task APIs
│
├── Create Task
├── Fetch Tasks
├── Update Task
└── Delete Task
│
▼
MongoDB Atlas
TaskFlow/
│
├── client/
│ │
│ ├── src/
│ │ │
│ │ ├── components/
│ │ │ └── ProtectedRoute.jsx
│ │ │
│ │ ├── pages/
│ │ │ ├── Login.jsx
│ │ │ ├── Register.jsx
│ │ │ ├── Dashboard.jsx
│ │ │ ├── Auth.css
│ │ │ └── Dashboard.css
│ │ │
│ │ ├── services/
│ │ │ └── api.js
│ │ │
│ │ ├── App.jsx
│ │ ├── main.jsx
│ │ └── index.css
│ │
│ ├── .env.example
│ ├── package.json
│ └── vite.config.js
│
├── server/
│ │
│ ├── config/
│ │ └── db.js
│ │
│ ├── controllers/
│ │ ├── authController.js
│ │ └── taskController.js
│ │
│ ├── middleware/
│ │ └── authMiddleware.js
│ │
│ ├── models/
│ │ ├── User.js
│ │ └── Task.js
│ │
│ ├── routes/
│ │ ├── authRoutes.js
│ │ └── taskRoutes.js
│ │
│ ├── .env.example
│ ├── server.js
│ └── package.json
│
├── screenshots/
│ ├── login.png
│ ├── dashboard.png
│ └── edit-task.png
│
├── .gitignore
└── README.md
| Layer | Technology | Responsibility |
|---|---|---|
| 🎨 Frontend | React + Vite | UI, state management and user interactions |
| 🔗 API Client | Axios | Communication between frontend and backend |
| 🧭 Routing | React Router | Navigation and protected routes |
| ⚙️ Backend | Node.js + Express | REST APIs and application logic |
| 🔐 Authentication | JWT + bcryptjs | Secure login and password protection |
| 🛡️ Middleware | JWT Middleware | Protects private API routes |
| 🗃️ Database | MongoDB + Mongoose | Stores users and tasks |
| ☁️ Database Hosting | MongoDB Atlas | Cloud database infrastructure |
| ▲ Frontend Hosting | Vercel | Production React deployment |
| 🚀 Backend Hosting | Render | Production Express API deployment |
If you found TaskFlow useful or liked the project, consider giving the repository a ⭐ on GitHub.


