A macOS menu bar Pomodoro timer built with SwiftUI.
- Menu bar timer with quick popover UI
- Work / Short Break / Long Break sessions
- Configurable durations and long-break cadence
- Global keyboard shortcuts (customizable)
- Local notifications at session transitions
- Session notes for work blocks
- Stats:
- Today: completed pomodoros, focus minutes
- Last 7 days: bar chart
- All-time: total pomodoros, focus hours, current/best streak
- CSV export of all sessions
- macOS 14.0+
- Xcode 15+ (recommended)
- Clone the repo
- Open
Pomodoro.xcodeprojin Xcode - Build and run the
Pomodoroscheme
Release export script:
./build.shOutput: ~/Desktop/MacPomodoroExport/MacPomodoro.app
- Left-click menu bar tomato icon: open/close timer popover
- Right-click menu bar icon: quit app
- Timer tab: start/pause/reset/skip, add work note
- Stats tab: view stats, export CSV
- Prefs tab: durations, break cadence, sound, shortcuts
- Start:
⌃⌥⌘↑ - Interrupt/Pause:
⌃⌥⌘← - Resume:
⌃⌥⌘→
- Local-only storage
- SQLite DB:
~/Library/Application Support/Pomodoro/pomodoro.db - Preferences/shortcuts:
UserDefaults - No sync/analytics/tracking
- Swift + SwiftUI (menu bar app)
- GRDB (SQLite persistence)
- Charts (weekly activity chart)
- UserNotifications (session-end alerts)
- Carbon Hotkeys (global shortcuts)
Pomodoro/Views- timer, stats, preferences UIPomodoro/Helpers- hotkeys and notificationsPomodoro/Persistence- DB + CSV exportbuild.sh- archive/export script
osascript -e 'tell application "System Events" to make login item at end with properties {path:"/Applications/MacPomodoro.app", hidden:false}'
- Custom sounds
Licensed under the Apache License, Version 2.0. See LICENSE.
This project was developed with significant AI assistance and is provided on an "AS IS" basis, without warranties or conditions of any kind.