Tasker is a command-line tool written in Go for managing your todo tasks. With Tasker, you can add, update, delete, and list tasks, as well as manage their statuses (e.g., done, todo, in progress).
Project idea from https://roadmap.sh/projects/task-tracker
- Add new tasks
- Update existing tasks
- Delete tasks
- Clear all tasks
- List tasks (with optional filtering by status)
- Mark tasks as "done", "todo", or "in progress"
- Show task details
-
Clone the repository:
git clone https://github.com/PavelNikoltsev/tasker.git
-
Navigate to the project directory:
cd tasker -
Build the project:
make build
This will generate the
taskerexecutable in the project directory.
After building the project, you can use the tasker command as follows:
./tasker <command> [arguments]| Command | Description |
|---|---|
add <task description> |
Add a new task |
update <task ID> <task description> |
Update an existing task |
delete <task ID> |
Delete a task |
clear |
Clear all tasks |
list [status] |
List tasks, optionally filtered by status |
show <task ID> |
Show details of a task |
mark-done <task ID> |
Mark a task as "done" |
mark-todo <task ID> |
Mark a task as "todo" |
mark-in-progress <task ID> |
Mark a task as "in progress" |
help |
Show help message |
You can filter tasks by their status using the list command:
donetodoin-progress
Example:
./tasker list todo-
Add a task:
./tasker add "Complete the report" -
Update a task:
./tasker update 1 "Submit the report" -
Mark a task as done:
./tasker mark-done 1
-
Delete a task:
./tasker delete 2