CLI To-Do List (Go) Jednostavna komandno-linijska aplikacija u programskom jeziku Go za upravljanje dnevnim zadacima
- Go 1.21+
git clone <repo-url>
cd <repo-dir>
go build -o todo ../todo <command> [options]
| Command | Description |
|---|---|
add |
Open interactive TUI form to add a new task |
list |
List all tasks, sorted by priority |
show_description <id> |
Show full details for a task |
edit <id> <field> <value> |
Edit a field on an existing task |
mark <id> |
Mark a task as done |
unmark <id> |
Mark a task as pending |
delete <id> |
Delete a task |
stats |
Show statistics and progress |
./todo list --category faks
./todo list --status done
./todo list --status pending
./todo list --category faks --status pending./todo edit <id> title "New title"
./todo edit <id> description "New description"
./todo edit <id> category "work"
./todo edit <id> priority 3 # 1=low, 2=medium, 3=high
./todo edit <id> due 2026-07-01When running add, a TUI form opens in the terminal:
| Key | Action |
|---|---|
Tab / ↑ ↓ |
Navigate between fields |
Enter |
Edit the selected text field |
← → |
Change priority (on the priority row) |
Escape |
Cancel and exit |
Title and Category are required. Due date must be in YYYY-MM-DD format.
Tasks are saved to data.json in the current directory. The file is created automatically on first use. You can edit it manually if needed — each task has the following fields:
{
"id": 1,
"title": "Task title",
"description": "",
"category": "work",
"priority": 3,
"due_date": "2026-06-01",
"completed": false
}Priority values: 0 = none, 1 = low, 2 = medium, 3 = high.