{"id":13432601,"url":"https://github.com/kakengloh/tsk","last_synced_at":"2025-04-07T07:07:29.071Z","repository":{"id":56855308,"uuid":"525277041","full_name":"kakengloh/tsk","owner":"kakengloh","description":"Lightweight terminal task app written in Go (Golang)","archived":false,"fork":false,"pushed_at":"2022-09-16T04:57:48.000Z","size":123,"stargazers_count":246,"open_issues_count":1,"forks_count":11,"subscribers_count":6,"default_branch":"main","last_synced_at":"2025-03-31T06:04:29.339Z","etag":null,"topics":["boltdb","cli","go","golang","simple","todo"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kakengloh.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-08-16T07:36:29.000Z","updated_at":"2025-03-18T00:03:55.000Z","dependencies_parsed_at":"2023-01-18T09:36:44.362Z","dependency_job_id":null,"html_url":"https://github.com/kakengloh/tsk","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kakengloh%2Ftsk","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kakengloh%2Ftsk/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kakengloh%2Ftsk/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kakengloh%2Ftsk/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kakengloh","download_url":"https://codeload.github.com/kakengloh/tsk/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247608151,"owners_count":20965952,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["boltdb","cli","go","golang","simple","todo"],"created_at":"2024-07-31T02:01:13.990Z","updated_at":"2025-04-07T07:07:29.044Z","avatar_url":"https://github.com/kakengloh.png","language":"Go","funding_links":["https://www.buymeacoffee.com/kakengloh"],"categories":["Go","\u003ca name=\"todo-manager\"\u003e\u003c/a\u003eTodo managers"],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg width=\"250\" alt=\"tsk logo\" src=\"https://user-images.githubusercontent.com/40446720/185574124-28e9e2b4-bdfc-4aa8-aaed-c82d91576a97.png\" /\u003e\n\u003c/p\u003e\n\u003ch1 align=\"center\"\u003e tsk \u003c/h1\u003e\n\u003cp align=\"center\"\u003e\n  \u003cb\u003etsk is a terminal task management app with an emphasis on simplicity, efficiency and ease of use\u003c/b\u003e\n\u003c/p\u003e\n\u003cp align=\"center\"\u003e\n\u003ca href=\"https://github.com/kakengloh/tsk/actions/workflows/build.yml\"\u003e\u003cimg src=\"https://github.com/kakengloh/tsk/actions/workflows/build.yml/badge.svg\" /\u003e\u003c/a\u003e \u003ca href=\"https://goreportcard.com/report/github.com/kakengloh/tsk\"\u003e\u003cimg src=\"https://goreportcard.com/badge/github.com/kakengloh/tsk\" /\u003e\u003c/a\u003e \u003ca href=\"https://github.com/kakengloh/tsk\"\u003e\u003cimg src=\"https://img.shields.io/github/go-mod/go-version/kakengloh/tsk.svg\" /\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\u003cbr\u003e\n\n## Description\n\n`tsk` allows you to create and manage your tasks efficiently your terminal, so that you can dump your mouse 🖱️\n\n## Why\n\nShiny task management web apps often have tons of unnecessary features causing UI glitches which impact our UX 😵‍💫 \u003cbr\u003e The huge JS chunks loading and network calls on every smallest action causing feedback delay and it is annoying ⌛\n\nPersonal task management should be as simple as possible, let's build a snappy cli app that doesn't get in our way ✌️\n\n## Features\n\n- Simple and concise commands ✅\n- Works without internet connection ✅\n- Data stored locally - powered by [BoltDB](https://github.com/etcd-io/bbolt) ✅\n- Task due reminder via desktop notification ✅\n\nSee [todo](#todo)\n\n## Installation\n\n### Homebrew\n```bash\nbrew tap kakengloh/tsk\nbrew install tsk\n```\n\n### Go\n\n```bash\n# Go 1.16+\ngo install github.com/kakengloh/tsk@latest\n\n# Go \u003c 1.16\nGO111MODULE=on go get github.com/kakengloh/tsk\n```\n\n\u003e Ensure that `$GOPATH/bin` is in your `PATH`\n\n### Shell completion\n\nShell completion is supported on `bash`, `zsh`, `fish`, `powershell`\n\nTo enable it, run `tsk completion {YOUR_SHELL} -h` and follow the steps\n\n### Executables\n\nSee [releases](https://github.com/kakengloh/tsk/releases)\n\n## Example\n\n### Create a new task\n\n```bash\ntsk new 'make coffee'\n```\n\n\u003cimg width=\"600\" alt=\"tsk new output\" src=\"https://user-images.githubusercontent.com/40446720/186668426-a5908430-c1db-4529-9206-6033571cff85.png\"\u003e\n\n### Create a new task with status, priority and due\n\n```bash\ntsk new 'feed my cat' -s doing -p high -d 1h\n```\n\n\u003cimg width=\"600\" alt=\"tsk new with options output\" src=\"https://user-images.githubusercontent.com/40446720/186668696-6ba2e1b3-d2d2-4db9-953b-ac706876f365.png\"\u003e\n\n### List tasks\n\n```bash\ntsk ls\n```\n\n\u003cimg width=\"600\" alt=\"tsk ls output\" src=\"https://user-images.githubusercontent.com/40446720/186668844-d73e83dd-e334-403c-b59e-e8410984c994.png\"\u003e\n\n### List tasks with filters (status, priority, due)\n\n```bash\ntsk ls -s doing -p high -d 1h\n```\n\n\u003cimg width=\"600\" alt=\"tsk ls with filters output\" src=\"https://user-images.githubusercontent.com/40446720/186668966-12b472d3-b38e-449c-b1ad-eec70c86ac42.png\"\u003e\n\n### List tasks with a keyword\n\n```bash\ntsk ls cat\n```\n\n\u003cimg width=\"600\" alt=\"tsk ls with keyword output\" src=\"https://user-images.githubusercontent.com/40446720/186669061-d20d7a1a-7c75-4225-a0e3-f450dbb193af.png\"\u003e\n\n### List tasks as JSON\n\n```bash\ntsk ls -f json\n```\n\n\u003cimg width=\"250\" alt=\"tsk ls json format output\" src=\"https://user-images.githubusercontent.com/40446720/186669184-f25cb05d-6625-41db-ac87-3e12b2c03ae0.png\"\u003e\n\n### View tasks in a Kanban board\n\n```bash\ntsk board\n```\n\n\u003cimg width=\"400\" alt=\"tsk board output\" src=\"https://user-images.githubusercontent.com/40446720/186669288-670f387c-0da8-42cd-a348-502c50853d4c.png\"\u003e\n\n### Mark task(s) as todo\n\n```bash\ntsk todo 2\n```\n\n\u003cimg width=\"250\" alt=\"tsk todo output\" src=\"https://user-images.githubusercontent.com/40446720/186669381-e5bde5b1-84bd-4cf8-9721-564739930b1e.png\"\u003e\n\n### Mark task(s) as doing\n\n```bash\ntsk doing 2\n```\n\n\u003cimg width=\"250\" alt=\"tsk doing output\" src=\"https://user-images.githubusercontent.com/40446720/186669448-5eedb3d0-af4b-4074-a42a-d9daf387571c.png\"\u003e\n\n### Mark task(s) as done\n\n```bash\ntsk done 2\n```\n\n\u003cimg width=\"250\" alt=\"tsk done output\" src=\"https://user-images.githubusercontent.com/40446720/186669471-7ab542ad-ce34-495d-b5cc-8aeb36d086d9.png\"\u003e\n\n### Modify an existing task\n\n```bash\ntsk mod 2 -s todo -p low\n```\n\n\u003cimg width=\"600\" alt=\"tsk mod output\" src=\"https://user-images.githubusercontent.com/40446720/186669548-1be2b856-5f2a-4e34-8788-bbfdf15f58a9.png\"\u003e\n\n### Add note(s) on a task\n\n```bash\ntsk note 2 'it still hungry' 'meow...'\n```\n\n\u003cimg width=\"600\" alt=\"tsk note output\" src=\"https://user-images.githubusercontent.com/40446720/186669611-8a7c67aa-ac04-479d-b1c3-46fd2829d24c.png\"\u003e\n\n### Remove task(s)\n\n```bash\ntsk rm 1\n```\n\n### Start task reminder\n\n```bash\ntsk reminder start\n```\n\n### Stop task reminder\n\n```bash\ntsk reminder stop\n```\n\n### Set task reminder time\n\n```bash\n# Notify on 1 minute, 15 minute and 1 hour before task due\ntsk reminder time 1m 15m 1h\n```\n\n### Clean your data\n\n```bash\ntsk clean\n```\n\n## Todo\n\n- [x] Task due\n- [x] Due reminder (via desktop notification)\n\n## Contributing\n\nWe welcome all feature requests and pull requests! 🙋\n\n---\n\n\u003cp\u003e\n  \u003ca href=\"https://www.buymeacoffee.com/kakengloh\" target=\"_blank\"\u003e\u003cimg src=\"https://cdn.buymeacoffee.com/buttons/v2/default-yellow.png\" alt=\"Buy Me A Coffee\" style=\"height: 54px !important;width: 217px !important;\" \u003e\u003c/a\u003e\n  \u003ca href=\"https://www.producthunt.com/posts/tsk?utm_source=badge-featured\u0026utm_medium=badge\u0026utm_souce=badge-tsk\" target=\"_blank\"\u003e\u003cimg src=\"https://api.producthunt.com/widgets/embed-image/v1/featured.svg?post_id=357125\u0026theme=light\" alt=\"tsk - Organize\u0026#0032;tasks\u0026#0032;right\u0026#0032;in\u0026#0032;your\u0026#0032;terminal | Product Hunt\" style=\"width: 250px; height: 54px;\" width=\"250\" height=\"54\" /\u003e\u003c/a\u003e\n\u003c/p\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkakengloh%2Ftsk","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkakengloh%2Ftsk","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkakengloh%2Ftsk/lists"}