How xylecara/gee-lister works
Gee Lister is a command-line todo tracker. A user invokes the CLI, which loads the JSON task list and dispatches add, update, delete, status, or list commands. Mutations write the updated list back to JSON; listing passes tasks to the formatter for terminal output. The README also documents ID-based selection and status-filtered listing. The sampled sources show command dispatch and persistence calls; the JSON file is the configured data path, not an independently inspected storage implementation.
Main entry points: main.go CLI entry · json_handler.go Task JSON handler · delete.go Delete task · add.go Add task
Components 12
CLI routing
- CLI entry
main.go
Task operations
- Add task
cmd/add.go - Update task
cmd/update.go - Delete task
cmd/delete.go - Mark in progress
cmd/mip.go - Mark done
cmd/md.go - Mark todo
cmd/ms.go - List tasks
cmd/list.go
Formatting and storage
- Task formatter
formatter/formatter.go - Task JSON handler
handler/json_handler.go - Task data
json/tasks.json
Other components
- CLI user
Connections 19
- CLI user → CLI entry: runs commands
README.md - CLI entry → Task JSON handler: loads tasks
main.go - CLI entry → Add task: dispatches add
main.go - CLI entry → Update task: dispatches update
main.go - CLI entry → Delete task: dispatches delete
main.go - CLI entry → Mark in progress: dispatches mip
main.go - CLI entry → Mark done: dispatches md
main.go - CLI entry → Mark todo: dispatches ms
main.go - CLI entry → List tasks: dispatches list
main.go - CLI entry → Task data: sets data path
main.go - Add task → Task JSON handler: writes tasks
cmd/add.go - Update task → Task JSON handler: writes tasks
cmd/update.go - Delete task → Task formatter: repairs IDs
cmd/delete.go - Delete task → Task JSON handler: writes tasks
cmd/delete.go - Mark in progress → Task JSON handler: writes tasks
cmd/mip.go - Mark done → Task JSON handler: writes tasks
cmd/md.go - Mark todo → Task JSON handler: writes tasks
cmd/ms.go - List tasks → Task formatter: formats listing
cmd/list.go - Task JSON handler → Task data: reads and writes