A full-stack Task Management Application built with React (frontend) and Django REST Framework (backend). Users can register, log in, create tasks, update task statuses, and delete tasks.
- User Registration & Login with JWT authentication
- Task CRUD operations (Create, Read, Update, Delete)
- Task status toggle (pending ↔ completed)
- Task count summary (pending, completed, total)
- Responsive UI with React
- Frontend: React, Axios, React Router, CSS
- Backend: Django 5, Django REST Framework, Simple JWT
- Database: SQLite, can be swapped with PostgreSQL
- Hosting: AWS (backend) + Amplify (frontend)
TaskManagementApp/
├─ backend/
│ ├─ api/
│ │ ├─ migrations/
│ │ ├─ models.py
│ │ ├─ serializers.py
│ │ └─ views.py
│ ├─ manage.py
│ └─ backend/
├─ frontend/
│ ├─ src/
│ │ ├─ components/
│ │ ├─ styles/
│ │ └─ App.jsx
│ └─ package.json
└─ README.md
| Method | Endpoint | Description | Auth |
|---|---|---|---|
| POST | /api/user/register/ |
Register new user | No |
| POST | /api/token/ |
Get JWT tokens | No |
| POST | /api/token/refresh/ |
Refresh JWT token | No |
| GET | /api/tasks/ |
List user tasks | Yes |
| POST | /api/tasks/ |
Create new task | Yes |
| PATCH | /api/tasks/<id>/ |
Update task status/content | Yes |
| DELETE | /api/tasks/delete/<id>/ |
Delete task | Yes |
This project is licensed under the MIT License.