Branch: master
Clone or download
Latest commit 63b1e54 Feb 11, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
docs fix links again Feb 10, 2019
Gopkg.lock update dependencies Jan 25, 2019
Gopkg.toml fix out of date dependencies Jan 31, 2018
LICENSE update license Jan 11, 2019
Makefile add installer script Feb 10, 2019
bindata.go refactor run loop, add simple libnotify support, improve notification… Jan 21, 2018
go.sum update go modules Feb 10, 2019 add installer script Feb 10, 2019
main.go add long help message Jan 25, 2019
runner_test.go task -> runner Feb 9, 2018
server.go break out of listen loop on error Feb 4, 2018
tomato-icon.png refactor run loop, add simple libnotify support, improve notification… Jan 21, 2018
types.go output tasks only from the last 24 hours by default, add more task ou… Feb 9, 2018
ui.go update imports Jul 12, 2018
util.go update imports Jul 12, 2018
version.go fix version Jan 21, 2018


🍅 pomo

pomo is a simple CLI for using the Pomodoro Technique. There are some amazing task management systems but pomo is more of a task execution or timeboxing system. pomo helps you track what you did, how long it took you to do it, and how much effort you expect it to take.


The Pomodoro Technique is simple and effective:

  • Decide on a task you want to accomplish
  • Break the task into timed intervals (pomodoros), [approx. 25 min]
  • After each pomodoro take a short break [approx. 3 - 5 min]
  • Once all pomodoros are completed take a longer break [approx 15 - 20 min]
  • Repeat



Binaries are available for Linux and OSX platforms in the releases section on github.

Installer Script

A bash script to download and verify the latest release for Linux and OSX platforms can be run with the following command:

curl -L -s | bash /dev/stdin


go get
pomo -v


Once pomo is installed you need to initialize it's database.

pomo init

Start a 4 pomodoro session at 25 minute intervals:

pomo start -t my-project "write some codes"


Pomo has a few configuration options which can be read from a JSON file in Pomo's state directory ~/.pomo/config.json.


You can map colors to specific tags in the colors field.


    "colors": {
        "my-project": "hiyellow",
        "another-project": "green"


Status Bars

The Pomo CLI can output the current state of a running task session via the pomo status making it easy to script and embed it's output in various Linux status bars.


You can create a module with the custom/script type and embed Pomo's status output in your Polybar:

type = custom/script
interval = 1
exec = pomo status


  • Generate charts/burn down
  • ??