A small task tracker that runs in the terminal and stores tasks in a local SQLite database.
Nothing fancy. I built it as a first Python + SQLite exercise to understand how a simple command-line program can keep data after the script closes.
- adds tasks
- lists saved tasks
- marks tasks as done
- deletes tasks
- stores everything in
tasks.db
- Python
- SQLite
No external packages are needed.
Show the help message:
python3 app.py helpAdd a task:
python3 app.py add "Write README"List tasks:
python3 app.py listMark a task as done:
python3 app.py done 1Delete a task:
python3 app.py delete 1Task list:
--------------------------------------------------
[1] [x] Learn Python basics (2026-05-17 00:39)
[2] [ ] Write README (2026-05-17 00:40)
--------------------------------------------------
- how to read command-line arguments with
sys.argv - how to create a SQLite database from Python
- how to create a table if it does not exist yet
- how basic CRUD operations work: create, read, update, delete
- why
.gitignorematters for local database files - why small terminal tools are useful for understanding program flow without hiding logic behind a UI
- add due dates
- add task priorities
- add categories
- add a search command
- add simple tests
Built while practicing programming fundamentals and preparing small projects for my IT Ausbildung applications.