File size: 1,770 Bytes
25ead9d 7cfbe54 25ead9d 7cfbe54 25ead9d | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 | # β¦ TaskMaster β Flask Task Manager
A clean, fully functional personal task manager built with Flask.
No database required β works out of the box!
---
## π Quick Start
```bash
# 1. Install Flask
pip install flask
# 2. Run the app
python app.py
# 3. Open browser
# β http://127.0.0.1:5000
```
---
## π Project Structure
```
taskmaster/
βββ app.py β Flask app + REST API
βββ requirements.txt β Dependencies (just Flask)
βββ templates/
βββ index.html β Beautiful single-page UI
```
---
## π REST API
| Method | Endpoint | Description |
|--------|-----------------------|-----------------------|
| GET | `/api/tasks` | List tasks (filterable)|
| POST | `/api/tasks` | Create a new task |
| PATCH | `/api/tasks/<id>` | Update a task |
| DELETE | `/api/tasks/<id>` | Delete a task |
| GET | `/api/stats` | Get summary stats |
### Query params for GET /api/tasks
- `?done=true/false`
- `?priority=high/medium/low`
- `?category=work/personal/learning/general`
### POST /api/tasks body
```json
{
"title": "My task",
"priority": "high",
"category": "work",
"due_date": "2026-06-30"
}
```
---
## β¨ Features
- Add tasks with title, priority, category, and due date
- Mark tasks as done / pending
- Delete tasks
- Filter by status, priority, or category
- Live stats dashboard (total / done / pending / urgent)
- Toast notifications
- Fully responsive design
- Zero database β pure Python in-memory store
---
## π Tech Stack
- **Backend:** Python + Flask
- **Frontend:** Vanilla HTML/CSS/JS (no frameworks)
- **Storage:** In-memory (dict) β add SQLite easily if you want persistence
|