World 1-1 · ★ SHIPPED

MeetingNudge

I built MeetingNudge after turning up 11 minutes late to my own sprint planning. The calendar had warned me once, quietly, behind the window I was working in. I wanted a reminder I couldn’t accidentally ignore.

Role

Design + Build

Platform

macOS (menu bar)

Engine

Swift + EventKit

Data model

On-device

MeetingNudge app showing a Sprint Planning meeting notification with Join Teams button, snooze and dismiss options

The whole loop

From calendar to call

1 · Keep it visible

The next meeting and a live countdown sit in the menu bar, where I can see them without opening a calendar.

2 · Find the door

MeetingNudge checks the event’s URL, notes and location for Zoom, Meet, Teams or Webex links.

3 · Be impossible to miss

When the meeting starts, the optional overlay takes over every display until I join, snooze or dismiss it.

Stage 1

The Problem

macOS notifications are easy to miss when you’re concentrating. Mine disappeared behind the window I was working in; by the time I noticed, everyone else was already in the call.

Then came the usual scramble: open Calendar, find the event, search its notes for the join link, wait for the browser and arrive with an apology.

Stage 2

The Fix

MeetingNudge keeps the next meeting in the menu bar, extracts its conference link and reminds me at the times I choose.

For the meetings I really cannot miss, a full-screen overlay puts Join, Snooze and Dismiss in front of me. One decision, then I’m in.

Power-ups

What earns its place

One-Click Join

Finds Zoom, Meet, Teams and Webex links in the event URL, notes or location, then gives me one clear Join button.

The Overlay

An optional full-screen reminder across every display. Join, snooze or dismiss without hunting through windows.

Menu Bar Countdown

The next meeting and its countdown stay one glance away, with reminder times I can set per my own tolerance for panic.

Local by Default

Calendar access stays on the Mac. EventKit supplies read-only events; UserDefaults stores preferences. There is no account or analytics layer.

Under the hood

Built for the Mac

MeetingNudge is a small Swift app because the things it needs—calendar access, local notifications, menu-bar presence and multi-display overlays—already belong to macOS.

stack.txt
  • Swift — a native menu-bar app with a small footprint
  • EventKit — read-only calendar access, straight from the system
  • UserNotifications — local reminders, no push servers
  • UserDefaults — preferences stay on your machine
  • Dependencies — kept deliberately small and easy to audit

Developer notes

What the first version taught me

What I got wrong

I started with ordinary notifications. They were technically correct and practically invisible—the same problem I was trying to solve.

The fiddly bit

Conference links turn up in several event fields and several formats. Link detection needed real calendar mess, not a tidy demo event.

The useful constraint

Keeping everything on-device made the privacy story simpler and forced the app to work without an account, sync service or backend.

Level complete?

Stop watching
the clock

MeetingNudge is still on its way to the App Store. The support and privacy pages are already here if you want the detail.

App Store · coming soon Questions? Support lives here →