Skip to content
WilliamJohnDavisIIIPublic

About

A clean, minimal native macOS Pomodoro timer with menu bar mode, custom sounds, and configurable intervals.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

6 Commits

Folders and files

Repository files navigation

PomoBloom

PomoBloom is a clean, minimal macOS Pomodoro timer with a friendly tomato timer icon, menu bar controls, configurable intervals, custom sounds, and optional Dock icon hiding.

Features

  • Focus, short rest, and long rest timers
  • Configurable long-rest interval count
  • Daily focus interval goal
  • Start, pause, reset, and skip controls
  • Menu bar status item with quick actions
  • Optional Dock icon hiding for menu-bar-first use
  • Auto-start options for rest and focus sessions
  • macOS notifications at session boundaries
  • Separate completion sounds for focus, short rest, and long rest
  • Custom audio file selection
  • Native SwiftUI macOS interface

Requirements

  • macOS 14 or later
  • Xcode command line tools or Xcode
  • Swift 6 compatible toolchain

Download

Download the latest standalone DMG from the Releases page.

To install:

  1. Download the newest PomoBloom-*.dmg file.
  2. Open the DMG.
  3. Drag PomoBloom.app into the Applications shortcut.
  4. Launch PomoBloom from Applications.

The release app is self-contained. No separate runtime or package manager is required.

Build And Run

From the project root:

./script/build_and_run.sh

This builds a release app bundle at:

dist/PomoBloom.app

To build without launching:

./script/build_and_run.sh bundle

To install into /Applications:

./script/build_and_run.sh install

To create a distributable DMG:

./script/create_dmg.sh

Development

The app is a Swift Package Manager macOS app. Source files are organized by responsibility:

  • Sources/PomoBloom/App: app entry point and app-level state
  • Sources/PomoBloom/Models: timer and sound value models
  • Sources/PomoBloom/Stores: user settings and Pomodoro timer state
  • Sources/PomoBloom/Services: notifications and sound playback
  • Sources/PomoBloom/Support: small macOS helpers and formatters
  • Sources/PomoBloom/Views: SwiftUI views and controls

The icon is generated locally by:

swift script/generate_icon.swift Assets

License

PomoBloom is licensed under the GNU General Public License v3.0. See LICENSE.

About

A clean, minimal native macOS Pomodoro timer with menu bar mode, custom sounds, and configurable intervals.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages