What It Does
CalendarUpcoming sits silently in the menu bar as a plain calendar icon. When an event is approaching, the icon changes colour and pulses with a glow to get your attention.
- Blue — event approaching (within your configured look-ahead window)
- Amber — event starting within 5 minutes
- Red — event is currently in progress
Click the icon to see a popover listing all upcoming events with time remaining, clock time, and calendar name with a colour bar.
Calendar Support
Monitors all calendars registered with macOS, including:
- Apple Calendar
- iCloud
- Google Calendar
- Outlook / Exchange (via System Settings → Internet Accounts)
All-day events and declined events are automatically filtered.
Controls
| Action | Result |
|---|---|
| Left-click icon | Open popover with upcoming events |
| Right-click icon | Menu (About, Settings, Check for Updates, Quit) |
| escape / click outside | Close popover |
Settings
Right-click the icon and choose Settings… to configure:
- Alert threshold — how far ahead to scan for events: 5, 10, 15, 30, or 60 minutes
- Calendar access — permission status and grant button
- Menu bar icon pill — optional grey background for stronger contrast on busy or wallpaper-tinted menu bars (off by default)
- Launch at Login — start automatically when you log in
Auto-updates are handled by Sparkle. Use the “Check for Updates…” menu item to check on demand; Sparkle’s prompt offers an “Automatically download and install updates in the future” checkbox the first time an update is available. CalendarUpcoming checks for new versions automatically once a day in the background.
Installation
Two formats on every release — both signed and notarised, pick whichever suits:
- Installer (
.pkg) — recommended for first-time installs. Double-click to run; macOS Installer places the app in/Applicationswithout quarantine or App Translocation. - Download (
.zip) — unzip and dragCalendarUpcoming.appto your Applications folder.
On first launch, grant Full Access to calendars when prompted.
Permissions
Calendar — Full Access is required. On first launch, macOS will prompt for permission. Grant Full Access (not Write Only).
If the popover shows “Full calendar access needed”, go to System Settings → Privacy & Security → Calendars, find CalendarUpcoming, and switch from Write Only to Full Access.
Building from Source
Requires Xcode and a valid Apple developer certificate (the app must be code-signed for calendar permission tracking to work).
- Clone the repo:
git clone https://github.com/PerpetualBeta/CalendarUpcoming.git - Open
CalendarUpcoming.xcodeprojin Xcode - Build with commandB or run with commandR
Requirements
macOS 13 (Ventura) or later.