pomo

command module
v0.4.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 16, 2025 License: MIT Imports: 2 Imported by: 0

README ยถ

pomo โ€” Terminal Pomodoro Timer

Demo

Latest Release Build Status

A simple, customizable Pomodoro timer for your terminal, built with Bubble Tea.

Features

  • ๐Ÿ… Work and break timer sessions
  • ๐Ÿ“Š Real-time progress bar visualization
  • โŒจ๏ธ Keyboard shortcuts to adjust time mid-session
  • โธ๏ธ Pause and resume timer functionality
  • ๐Ÿ–ฅ๏ธ Optional full screen or inline mode
  • ๐Ÿ”” Cross-platform desktop notifications
  • ๐ŸŽจ Clean, minimal terminal UI
  • ๐Ÿ› ๏ธ Custom commands when timers complete

Usage

Work sessions:

pomo              # Default work session (25m)
pomo 30m          # Custom duration
pomo long         # Long work session (45m)

Break sessions:

pomo break        # Default break (5m)
pomo break 10m    # Custom duration
pomo long-break   # Long break (15m)

Installation

Install with Go

go install github.com/Bahaaio/pomo@latest

Or, build from source

git clone https://github.com/Bahaaio/pomo
cd pomo
go build .

Alternatively, download pre-built binaries from the releases page.

Configuration

๐Ÿ“ Config file search order

pomo looks for its config file in the following order:

  1. Current directory: pomo.yaml (highest priority)
  2. System config directory:
    • Linux: ~/.config/pomo/pomo.yaml
    • macOS: ~/Library/Application Support/pomo/pomo.yaml
    • Windows: %APPDATA%\pomo\pomo.yaml
  3. Built-in defaults if no config file is found

Example pomo.yaml:

fullScreen: true

work:
  duration: 25m
  title: work session

  # cross-platform notifications
  notification:
    enabled: true
    title: work finished ๐ŸŽ‰
    message: time to take a break
    icon: ~/my/icon

break:
  duration: 5m

  # will run after the session ends
  then:
    - spd-say 'Back to work!'

Check out pomo.yml for a full example with all options.

Key Bindings
Key Action
โ†‘ / k Increase time by 1 minute
โ†“ / j Decrease time by 1 minute
Space Pause/Resume timer
โ† / h Reset to initial duration
q / Ctrl+C Quit

License

This project is licensed under the MIT License. See the LICENSE file for details.

Documentation ยถ

The Go Gopher

There is no documentation for this package.

Directories ยถ

Path Synopsis
Package cmd provides the command-line interface for the pomo timer.
Package cmd provides the command-line interface for the pomo timer.
Package config loads, stores, and provides default values for work and break tasks.
Package config loads, stores, and provides default values for work and break tasks.
Package ui provides the terminal user interface for pomodoro sessions.
Package ui provides the terminal user interface for pomodoro sessions.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL