A simple and efficient command-line interface (CLI) task manager built with Go. This application allows you to manage your tasks directly from the terminal, providing a streamlined workflow for task creation, listing, completion, and deletion.
-
Add new tasks
-
List all tasks (including option to show completed tasks)
-
Mark tasks as complete
-
Delete tasks
-
Persistent storage using BoltDB
-
Human-readable time differences for task creation dates
-
Clone the repository:
git clone https://github.com/vineyy17/cli-task-manager.git
-
Navigate to the project directory:
cd cli-task-manager
-
Build the application: Make sure you have Go installed on your machine. Then, build the project using the following command:
go build
-
(Optional) Move the binary to a directory in your PATH for easy access::
sudo mv cli-task-manager /usr/local/bin/task
After installation, you can use the task
command followed by subcommands to manage your tasks.
task add <task description>
: Add a new tasktask list
: List all uncompleted taskstask list --all
ortask list -a
: List all tasks, including completed onestask complete <task_id>
: Mark a task as completetask delete <task_id>
: Delete a task
# Add a new task
task add "Go for a walk"
# List all uncompleted tasks
task list
# List all tasks, including completed ones
task list --all
# Mark task 1 as complete
task complete 1
# Delete task 2
task delete 2
- BoltDB: An embedded key/value database for Go.
- Cobra: A library for creating powerful CLI applications.
- timediff: A Go library for formatting time differences in a human-readable way.
- homedir: A Go library for expanding the user's home directory.
Contributions to the CLI Task Manager are welcome! Please feel free to submit a Pull Request.
This project is open source and available under the MIT License.