Command-line task manager
List View | Kanban View |
---|---|
![]() |
![]() |
- Task Management: Add, delete, update, and list tasks.
- Project Organization: Assign tasks to specific projects for better organization.
- SQLite Database Integration: Efficient storage and retrieval of tasks.
- Styled Output: Stylish table and Kanban layouts using Lip Gloss.
- Kanban Board Interface: Visualize tasks as a Kanban board with Bubble Tea.
Prerequisites:
- Go (version 1.16 or later recommended)
-
Clone the repository:
git clone https://github.com/ashish0kumar/taskly.git cd taskly
-
Install the application using
go install
:go install .
This command will compile the main.go
file and place the resulting executable
(taskly
) in your GOPATH/bin
directory. Ensure that your GOPATH/bin
is
included in your system's PATH environment variable so you can run taskly
from
anywhere in your terminal.
Alternatively, you can build the executable manually:
go build -o taskly .
# Then move the 'taskly' executable to a directory in your PATH
# For example: mv taskly /usr/local/bin/
Use Taskly commands from your terminal to manage tasks. The main command is
taskly
, followed by subcommands to perform specific actions.
-
Add a Task: Add a new task, optionally specifying a project name
taskly add "Task Name" -p "Project Name"
-
Delete a Task: Delete a task by its unique ID:
taskly delete <ID>
-
Update a Task: Update a task's name, project, or status:
taskly update <ID> -n "New Task Name" -p "New Project Name" -s <status>
Status options:
0
for "todo"1
for "in progress"2
for "done"
-
List All Tasks: List all stored tasks in a table format:
taskly list
-
View Kanban Board: Display tasks in a Kanban board layout. Tasks are categorized into
todo
,in progress
anddone
columns:taskly kanban
-
View Database Path: Locate the database file where tasks are stored:
taskly where
- Adding a Task with Project Name
taskly add "Design Homepage" -p "Website Redesign"
- Updating a Task's Status
taskly update 1 -s 1
- Listing All Tasks
taskly list
This command shows tasks in a formatted table with columns for ID, Name, Project, Status, and Creation Date.
- Viewing the Kanban Board
taskly kanban
This displays tasks in a Kanban layout, categorized by status.
Taskly uses a SQLite database to persist tasks. The database is stored in an
XDG-compliant directory (typically $HOME/.local/share/tasks.db
). This
structure enables easy backup and integration across systems.
- Cobra: CLI command framework.
- Bubble Tea: TUI framework for the Kanban board.
- Lip Gloss: Used for stylish table layouts.
- SQLite: Lightweight, serverless SQL database.
Contributions are welcome! Please fork the repository, create a new branch, and submit a pull request.
© 2025-present Ashish Kumar