A simple, elegant CLI Pomodoro timer written in Go. Boost your productivity with customizable focus sessions and breaks, complete with visual progress tracking and desktop notifications.
- Customizable Sessions: Configure focus duration, short breaks, long breaks, and sessions before long break
- Visual Progress Bar: Real-time progress visualization during sessions
- Pause/Resume: Press Enter to pause and resume sessions
- Desktop Notifications: Get notified when sessions complete (desktop notifications)
- Sound Alerts: Audio beeps to signal session start and completion
- Session Statistics: Track your productivity with session counts and total time
- Graceful Shutdown: Clean exit with Ctrl+C + session statistics summary
git clone https://github.com/devamaz/gomodoro.git
cd gomodoro
go build -o gomodorogo install github.com/devamaz/gomodoro@latestgomodoroThis starts a Pomodoro session with default settings:
- Focus: 25 minutes
- Short break: 5 minutes
- Long break: 15 minutes
- Long break every 4 focus sessions
gomodoro -f 30 -b 10 -l 15 -s 3This configures:
- 30 minute focus sessions
- 10 minute short breaks
- 15 minute long breaks
- Long break every 3 focus sessions
gomodoro -sound=false
gomodoro -notify=falsegomodoro -h| Flag | Description | Default |
|---|---|---|
-f |
Focus session duration in minutes | 25 |
-b |
Short break duration in minutes | 5 |
-l |
Long break duration in minutes | 15 |
-s |
Number of focus sessions before long break | 4 |
-sound |
Enable sound notifications (true/false) | true |
-notify |
Enable desktop notifications (true/false) | true |
-h |
Show help message | - |
- Enter - Pause/Resume current session
- Ctrl+C - Exit and show session statistics
Start with default settings:
gomodoroCustomize for longer focus periods:
gomodoro -f 45 -b 10Minimal setup without notifications:
gomodoro -sound=false -notify=falseAfter each session, you'll see a summary of your productivity:
📊 Session Statistics:
Focus Sessions: 1
Total Focus Time: 25m0s
Break Sessions: 1
Total Break Time: 5m0s
----------------------------------------
go test -vgo build -o gomodoro- Go 1.21.5 or higher
- Desktop notifications support (depends on OS)
This project is open source and available under the terms specified in the repository.
Contributions are welcome! Feel free to submit issues and pull requests.
Built with ❤️ using Go