top | item 40725517

Show HN: Pomoglorbo, a TUI Pomodoro timer for your terminal

65 points| justusw | 1 year ago |codeberg.org

This started out as a fork of pydoro and turned into a playground for dataclasses and strict mypy type checking. Some of the advanced features are

- it writes the current status into .local/state/pomoglorbo for i3status/xbar - it is very configurable, including cmd hooks to run after a Pomodoro/break finishes or starts

The layout is compact, and it runs well over SSH/Mosh/Tmux.

15 comments

order

localfirst|1 year ago

couldn't install it because i have python 3.10

justusw|1 year ago

Thanks for your feedback. You are right. I've lowered the minimum version to Python 3.10. If you want to give it another try, the package is on PyPI now.

pvdebbe|1 year ago

    sleep 20m ; mpc pause
I keep it simple.

timetraveller26|1 year ago

  #pomodoro.sh
  while true; do
    echo "Time to work, dumbass" | festival --tts
    sleep 25m || rm -rf /
    echo "Have some rest, dumbass" | festival --tts
    sleep 5m
  done

argiopetech|1 year ago

Probably easier to use shell history, but I like a loop.

  while () ; do sleep 20m; mpv bing.mp3; read; done

globalnode|1 year ago

simpler than mine:

  import time
  import argparse

  def main(mins):
    print(f"Starting pomodoro timer: {mins} minutes.")

    for m in range(mins, 0, -1):
        secs = 60
        for s in range(secs, 0, -1):
            print(f"{m-1}:{s-1}    ", end='\r')
            time.sleep(1)

    print("Timer finished - take a break!\a")
    time.sleep(2)
    print("\a")
    time.sleep(2)
    print("\a")
    time.sleep(2)


  if __name__ == "__main__":
      parser = argparse.ArgumentParser(description="Pomodoro Timer.")
    parser.add_argument("mins", type=int, help="minutes to time.")

    args = parser.parse_args()
    main(args.mins)