A collection of small Python utilities to improve daily productivity.
- Python 3.10+
- Install dependencies:
pip install -r requirements.txt
A command-line to-do list with persistent JSON storage.
Features:
- Add, list, edit, and delete tasks
- Mark tasks as complete
- Filter to show only open tasks
- Tasks saved automatically to
tasks.json
Run:
python todo_app/main.pySends recurring desktop notifications on a configurable schedule.
Features:
- Fully driven by
notification_scheduler/config.json— no code changes needed - Supports a set number of cycles or infinite mode
- Graceful fallback if
plyeris not installed (logs to console instead)
Run (one cycle):
python notification_scheduler/main.pyRun forever:
python notification_scheduler/main.py --infiniteRun 5 cycles:
python notification_scheduler/main.py --cycles 5Use a custom config file:
python notification_scheduler/main.py --config path/to/my_config.jsonEdit notifications by modifying notification_scheduler/config.json:
{
"app_name": "My Scheduler",
"default_timeout": 10,
"notifications": [
{
"title": "Drink Water",
"message": "Stay hydrated!",
"interval_seconds": 3600
}
]
}Py_Projects/
├── todo_app/
│ └── main.py # To-Do List app
├── notification_scheduler/
│ ├── main.py # Notification scheduler
│ └── config.json # Edit this to change notifications
├── requirements.txt
├── .gitignore
└── README.md
- Task data is stored locally in
todo_app/tasks.json(auto-created, git-ignored). - If
tasks.jsonis deleted, the app starts with an empty list. - If
plyeris unavailable, the scheduler prints notifications to the terminal instead.