• Stars
    star
    242
  • Rank 167,048 (Top 4 %)
  • Language
    Go
  • License
    MIT License
  • Created over 2 years ago
  • Updated about 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Lightweight terminal task app written in Go (Golang)

tsk logo

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
  • Task due reminder via desktop notification ✅

See todo

Installation

Homebrew

brew tap kakengloh/tsk
brew install tsk

Go

# 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

Example

Create a new task

tsk new 'make coffee'

tsk new output

Create a new task with status, priority and due

tsk new 'feed my cat' -s doing -p high -d 1h

tsk new with options output

List tasks

tsk ls

tsk ls output

List tasks with filters (status, priority, due)

tsk ls -s doing -p high -d 1h

tsk ls with filters output

List tasks with a keyword

tsk ls cat

tsk ls with keyword output

List tasks as JSON

tsk ls -f json

tsk ls json format output

View tasks in a Kanban board

tsk board

tsk board output

Mark task(s) as todo

tsk todo 2

tsk todo output

Mark task(s) as doing

tsk doing 2

tsk doing output

Mark task(s) as done

tsk done 2

tsk done output

Modify an existing task

tsk mod 2 -s todo -p low

tsk mod output

Add note(s) on a task

tsk note 2 'it still hungry' 'meow...'

tsk note output

Remove task(s)

tsk rm 1

Start task reminder

tsk reminder start

Stop task reminder

tsk reminder stop

Set task reminder time

# Notify on 1 minute, 15 minute and 1 hour before task due
tsk reminder time 1m 15m 1h

Clean your data

tsk clean

Todo

  • Task due
  • Due reminder (via desktop notification)

Contributing

We welcome all feature requests and pull requests! 🙋


Buy Me A Coffee tsk - Organize tasks right in your terminal | Product Hunt