Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/kakengloh/tsk
Lightweight terminal task app written in Go (Golang)
https://github.com/kakengloh/tsk
boltdb cli go golang simple todo
Last synced: 3 days ago
JSON representation
Lightweight terminal task app written in Go (Golang)
- Host: GitHub
- URL: https://github.com/kakengloh/tsk
- Owner: kakengloh
- License: mit
- Created: 2022-08-16T07:36:29.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2022-09-16T04:57:48.000Z (over 2 years ago)
- Last Synced: 2025-01-01T09:04:47.484Z (10 days ago)
- Topics: boltdb, cli, go, golang, simple, todo
- Language: Go
- Homepage:
- Size: 120 KB
- Stars: 244
- Watchers: 6
- Forks: 11
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
- my-awesome - kakengloh/tsk - 09 star:0.2k fork:0.0k Lightweight terminal task app written in Go (Golang) (Go)
README
tsk
tsk is a terminal task management app with an emphasis on simplicity, efficiency and ease of use
## Description
`tsk` allows you to create and manage your tasks efficiently your terminal, so that you can dump your mouse 🖱️
## Why
Shiny task management web apps often have tons of unnecessary features causing UI glitches which impact our UX 😵💫
The huge JS chunks loading and network calls on every smallest action causing feedback delay and it is annoying ⌛Personal task management should be as simple as possible, let's build a snappy cli app that doesn't get in our way ✌️
## Features
- Simple and concise commands ✅
- Works without internet connection ✅
- Data stored locally - powered by [BoltDB](https://github.com/etcd-io/bbolt) ✅
- Task due reminder via desktop notification ✅See [todo](#todo)
## Installation
### Homebrew
```bash
brew tap kakengloh/tsk
brew install tsk
```### Go
```bash
# Go 1.16+
go install github.com/kakengloh/tsk@latest# Go < 1.16
GO111MODULE=on go get github.com/kakengloh/tsk
```> Ensure that `$GOPATH/bin` is in your `PATH`
### Shell completion
Shell completion is supported on `bash`, `zsh`, `fish`, `powershell`
To enable it, run `tsk completion {YOUR_SHELL} -h` and follow the steps
### Executables
See [releases](https://github.com/kakengloh/tsk/releases)
## Example
### Create a new task
```bash
tsk new 'make coffee'
```### Create a new task with status, priority and due
```bash
tsk new 'feed my cat' -s doing -p high -d 1h
```### List tasks
```bash
tsk ls
```### List tasks with filters (status, priority, due)
```bash
tsk ls -s doing -p high -d 1h
```### List tasks with a keyword
```bash
tsk ls cat
```### List tasks as JSON
```bash
tsk ls -f json
```### View tasks in a Kanban board
```bash
tsk board
```### Mark task(s) as todo
```bash
tsk todo 2
```### Mark task(s) as doing
```bash
tsk doing 2
```### Mark task(s) as done
```bash
tsk done 2
```### Modify an existing task
```bash
tsk mod 2 -s todo -p low
```### Add note(s) on a task
```bash
tsk note 2 'it still hungry' 'meow...'
```### Remove task(s)
```bash
tsk rm 1
```### Start task reminder
```bash
tsk reminder start
```### Stop task reminder
```bash
tsk reminder stop
```### Set task reminder time
```bash
# Notify on 1 minute, 15 minute and 1 hour before task due
tsk reminder time 1m 15m 1h
```### Clean your data
```bash
tsk clean
```## Todo
- [x] Task due
- [x] Due reminder (via desktop notification)## Contributing
We welcome all feature requests and pull requests! 🙋
---