The lightest Pomodoro timer for macOS menu bar — just 1.5MB!
A minimal and elegant menu bar Pomodoro timer, built with Swift and SwiftUI. Stay focused, track your productivity, and respect your privacy.
📥 Download on App Store | 🐛 Report Issues
- Only 1.5MB — 90% smaller than competitors
- Native Swift & SwiftUI, zero third-party dependencies
- Minimal resource usage
- Adjust work duration (15-90 minutes)
- Configure short rest (3-30 min) and long rest (10-60 min)
- Auto-start work, rest, or next cycle
- Set rounds before long rest
- Daily, weekly, and total session counters
- 7-day productivity chart
- Visualize your focus trends
- Menu bar integration — no Dock clutter
- Animated tomato icons for work/rest/pause states
- Full dark mode support
- Gentle sound notifications
- Zero data collection
- All data stored locally on your Mac
- No internet connection required
- Completely free, no ads, no subscriptions
Green 🍅 = Rest | Gray 🍅 = Ready | Red 🍅 = Working
Full dark mode support with customizable durations and auto-start options
-
Clone the repository:
git clone https://github.com/happylaodu/PomodoroTimer.git cd PomodoroTimer -
Open in Xcode:
open PomodoroTimer.xcodeproj
-
Build and run (⌘R)
- Requires macOS 13.0+ and Xcode 15+
Problem: Most Pomodoro apps are bloated (10-50MB), require subscriptions, or collect your data.
Solution: A minimal, free, open-source timer that does one thing well — help you focus.
| Feature | Pomodoro Timer Lite | Other Apps |
|---|---|---|
| Size | 1.5MB | 10-50MB |
| Price | Free | $5-15 or subscription |
| Data Collection | Zero | Analytics, cloud sync |
| Customization | Full control | Often limited |
| Open Source | ✅ Yes | ❌ No |
- ⚙️ Settings Panel: Customize all timer durations
- 🔄 Auto-Start Options: Seamless workflow automation
- 📊 Improved Tracking: Better session statistics
- 🎨 UI Enhancements: Smoother animations
- Language: Swift 5.9+
- UI Framework: SwiftUI
- Menu Bar: AppKit (NSStatusItem)
- Charts: Charts framework
- Storage: UserDefaults (local-only)
PomodoroTimer/
├── PomodoroTimer.swift # Main timer logic & state management
├── ContentView.swift # Popup UI (SwiftUI)
├── StatusBarController.swift # Menu bar integration (AppKit)
├── SettingsView.swift # Settings panel
├── ChartView.swift # 7-day productivity chart
├── AppDelegate.swift # App lifecycle & notifications
└── Assets.xcassets/ # Icons and resources
Contributions are welcome! Here’s how you can help:
- Report bugs — Open an issue
- Suggest features — Share your ideas
- Submit PRs — For major changes, open an issue first to discuss
- Fork this repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
See Ideas.md for the full feature backlog.
None currently! 🎉
If you encounter any problems, please open an issue.
This project is licensed under the MIT License — see the LICENSE file for details.
You’re free to:
- ✅ Use commercially
- ✅ Modify
- ✅ Distribute
- ✅ Use privately
If you find this app helpful:
- ⭐ Star this repo on GitHub
- 📝 Rate it on the App Store
- 🐦 Share with friends who need better focus
- ☕ Buy me a coffee (just kidding, it’s free forever!)
Steven Du — GitHub
Built with ❤️ for the Pomodoro Technique community.





