A full‑stack task management application with productivity analytics, built using the MERN stack and a separate Python analytics microservice.
QuickTask allows users to:
- Register and authenticate securely
- Create, update, delete, and manage tasks
- Filter, search, and sort tasks
- View a dashboard with task analytics
- Toggle dark/light mode
- Export tasks as CSV
- Analyze productivity using a Python microservice
Live Demo: https://quicktask-todo.vercel.app
- React.js
- Axios
- Chart libraries (for analytics)
- Tailwind CSS
- Node.js
- Express.js
- MongoDB
- JWT Authentication
- Python 3.10.0
- Django
- REST APIs
Make sure the following are installed:
- Node.js >= 18.x
- npm >= 9.x
- Python 3.10.0
- pip
- MongoDB (local or Atlas)
- Git
QuickTask/
│
├── frontend/ # React application
├── backend/ # Node + Express API
├── python_microservice/ # Django analytics service
└── README.md
git clone https://github.com/atharvarajsinha/QuickTask.git
cd QuickTaskcd backend
npm installCreate .env file using the example below.
npm run devBackend runs on: http://localhost:5000
cd frontend
npm install
npm run devFrontend runs on: http://localhost:5173
cd python_microservice
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install -r requirements.txt
python manage.py migrate
python manage.py runserverPython service runs on: http://127.0.0.1:8000
PORT=5000
MONGO_URI=your_mongodb_connection_string
JWT_SECRET=your_jwt_secret
VITE_NODE_API_URL=node_server_url
VITE_ANALYTICS_API_URL=python_service_url
DEBUG=True
SECRET_KEY=your_django_secret_key
MONGO_URI=your_mongodb_connection_string
JWT_SECRET=your_jwt_secret
ALLOWED_HOSTS=localhost,127.0.0.1
| Service | Command | Port | Deployed |
|---|---|---|---|
| Backend | npm run dev |
5000 | Vercel |
| Frontend | npm run dev |
5173 | Render |
| Python Service | python manage.py runserver |
8000 | Render |
POST /auth/register- User RegistrationPOST /auth/login- User Login
GET /user/profile– Fetch user detailsPUT /user/profile– Update profilePOST /user/change-password- Change PasswordDELETE /user/delete-account- Delete AccountPATCH /user/toggle-mode– Dark/Light mode
GET /tasks/– Fetch all Tasks (with query params) []POST /tasks/– Create new TaskGET /tasks/:id/– Get particular TaskPUT /tasks/:id/update- Update TaskDELETE /tasks/:id/delete- Delete TaskPATCH /tasks/:id/status- Update Task StatusGET /tasks/export/csv- Export Tasks to CSV
GET /category/– Fetch all CategoryPOST /category/– Create new CategoryGET /category/:id/– Get particular CategoryPUT /category/:id/update- Update CategoryDELETE /category/:id/delete- Delete Category
Query Parameters Supported:
- status
- priority
- search
- sortBy
- order
GET /analytics/stats/- Shows user tasks stats endpointsGET /analytics/productivity/- Shows user productivity endpointGET /analytics/public-stats/- Homepage API endpoint
Frontend: https://quicktask-todo.vercel.app
Author: Atharva Raj Sinha



