I work remotely, and like many of us, I get nerd sniped constantly. I'll be deep in some code or rabbit hole and completely forget I have a meeting starting in two minutes.
Our work calendar lives in Google Calendar, but we can't connect it to third-party apps like Home Assistant. What we can do is sync it to the macOS Calendar on our work laptops.
So I built this. It runs locally on my Mac, reads calendar events directly from macOS (no API keys, no cloud sync, no permissions drama), and displays a countdown on my Ulanzi smart clock running Awtrix 3 firmware. When a meeting is about to start, the clock beeps at me and shows how much time I have left.
- Syncs with macOS Calendar every 5 minutes
- Shows a countdown when a meeting is within 5 minutes
- Beeps at 60 seconds and 0 seconds before meetings
- Runs silently in the background, starts on login
-
Clone and install:
git clone https://github.com/yourusername/awtrix3calendar.git cd awtrix3calendar ./install.sh -
Edit
~/.awtrix3calendar/config.jsonwith your MQTT broker details:{ "mqtt": { "host": "your-mqtt-broker-ip", "port": 1883, "username": "your_username", "password": "your_password" } } -
Grant calendar & local network access when macOS asks.
That's it. The app installs to /Applications and adds itself to Login Items.
- macOS 10.15+
- Python 3.10+
- Ulanzi clock with Awtrix 3 firmware
- MQTT broker on your network
awtrix3calendar start # Start in background
awtrix3calendar stop # Stop
awtrix3calendar status # Check if running
awtrix3calendar run # Run in foreground./uninstall.shMIT
