Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SitStandMove

A tiny macOS menu bar app that walks you through sit → stand → move loops throughout the day. It lives in your top bar, counts down the current phase, and when time's up it pops open a little panel with an animated figure doing the next action and a single button to start it.

The SitStandMove panel in light and dark mode

Sit Stand Move

How it works

  1. Click the menu bar icon to open the panel. It shows the first phase (Sit), how long it will last, and a Start button. Tap any of the Sit / Stand / Move tiles at the top to choose which phase to begin with.
  2. Press Start. The panel closes and the menu bar shows a live countdown.
  3. When the phase ends, a chime plays and the panel pops back open showing the next action (e.g. "Time to stand") with its little actor and duration.
  4. Press Start to begin it. The loop keeps cycling: sit → stand → move → sit…

While a phase is running you can Pause or Skip from the panel.

Settings

Right-click (or Control-click) the menu bar icon for the menu:

  • Settings… — set how many minutes each of Sit, Stand, and Move lasts.
  • Reset Loop — stop and return to the start of the loop.
  • Quit.

Durations are the only setting, and they persist between launches.

The defaults — 20 min sit · 8 min stand · 2 min move — follow the widely-cited 20-8-2 rule from office-ergonomics research (Cornell University Ergonomics / Prof. Alan Hedge): for every half hour at a desk, sit for about 20 minutes, stand for 8, then move for 2.

Build & run

Requires macOS 13+ and a Swift toolchain (Xcode or the Command Line Tools).

# Run it directly (great for development; Ctrl-C to quit):
make run

# Build a release .app bundle and launch it from dist/:
make open

# Install it into /Applications (no longer tied to this source tree):
make install

After make install, launch SitStandMove from Launchpad/Spotlight, then right-click the menu bar icon and choose Launch at Login so it starts automatically each time you log in (toggle it off there or in System Settings › General › Login Items to disable).

Project layout

Sources/SitStandMove/
  main.swift          # NSApplication entry point (menu-bar-only)
  AppDelegate.swift   # Status item, popover, right-click menu, settings window
  TimerManager.swift  # The sit/stand/move loop state machine + countdown
  SettingsStore.swift # Persisted per-phase durations
  Phase.swift         # The three phases (titles, icons, colors)
  PopoverView.swift   # The pop-out panel UI + tappable phase selectors
  FigureView.swift    # The animated actor (white SF Symbol on a color tile)
  SettingsView.swift  # Duration settings
scripts/bundle.sh     # Wraps the binary into a .app bundle

About

A tiny macOS menu bar app for sit / stand / move loops, with an animated little actor.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages