Tempo v1 is out - the event hub I floated here last month

Tempo v1 just released Downloadable now at tempoapp.app. Signed and notarized DMG, macOS 15+, 7 MB.

A bit of context - I floated the concept here last month and the questions you all asked shaped how I describe the product today. Quick recap on what v1 ships with:

  • 9 bundled scores ship in v1 (UniFi Network, UniFi Protect, Kopia, Uptime Kuma, Home Assistant, GitHub Actions, Synology, Scripts, Hazel) - covers most homelab/Mac-side patterns. More available from the score catalog including Pi-hole, Proxmox, Jellyfin, Vaultwarden.

  • Apple Calendar and Reminders pre-wired via a built-in EventKit provider. CalDAV included so Fastmail/Nextcloud/iCloud work without extra setup. This is optional and can be hidden in settings.

  • HTTP ingestion server listens on your LAN with per-provider tokens stored in Keychain. Five minutes from “installed” to your first POST landing on the timeline.

  • Sparkle auto-update on a 2-4 week cadence. Homebrew tap available: brew install --cask caereforge/tap/tempo.

  • Local SQLite. No cloud syncing - backup destination is yours to choose (iCloud Drive, local, mounted remote - all work the same way). No telemetry. This was the non-negotiable from day one - the part the docs and FAQ spend the most time being explicit about.

Honest framing: v1.x is freeware forever for everyone who installs. v2 may eventually be a paid one-time purchase if v1 finds an audience and the community asks for things that justify a second major release - full reasoning in the freeware announcement.

If you’ve been searching for an event hub that doesn’t try to be a calendar app or a Datadog clone - give it a try. Open to questions, rough edges, feature requests:

  • Discord - primary support + community channel

  • Full launch post - what’s in scope, what isn’t, who it’s for

  • User guide - 15 chapters covering concepts, setup, score authoring, troubleshooting

Wondering what a score is? Please read Tempo Blog

Want to see Tempo in action? Head to Tempo’s homepage to see full demo video.

Thanks to those who weighed in last month.

Leo from Caereforge

1 Like

Congratulations on the release! :tada:

CalDAV

How?

I don’t see it as a built-in source nor as a score on GitHub.

Maybe by enabling Calendars for Fastmail in macOS’s “Internet Accounts”?

(I currently don’t do that, because I use the native Fastmail app & CalDAV “everywhere”)

Uptime Kuma

I don’t see Uptime Kuma either?

Sources@2x

Maybe I should start reading the documentation first… (instead of being eager to “play”) :wink:

Already regret (not doing) that… :frowning:

It’s not just the Claude Max 20x subscription I use as my development companion (€220/month, €180 + VAT — by far the heaviest line).

Hi Rob, and wow - first real bug of v1 found in the first hour, by you.
Genuinely thanks for that, that’s exactly the kind of attention I was hoping someone would give it on day one.

Let me go through your points:

CalDAV - you’re correct, that’s exactly the path. Tempo reads calendars and reminders through EventKit (macOS’s built-in framework), which only sees what you’ve configured in macOS Internet Accounts. If you use the native Fastmail app and skip Internet Accounts, Tempo won’t see those calendars - EventKit only knows what the system knows. My “CalDAV included” line in the launch post was too compressed, sorry about that, I’ll fix the wording.

Uptime Kuma - this is the bug you found, and it’s a good one. Kuma is bundled (one of the 9 ship-installed scores), but the INSTALLED section of Manage Sources is reading from the events store instead of the scores store, so bundled scores stay invisible there until they receive their first event. The score is installed and ready, it’s just the UI lying about it. Hotfix going out as v1.0.1 today. In the meantime if you want to try Kuma, just configure it to POST a webhook to Tempo’s ingestion endpoint (`http://your-mac:7776/uptime-kuma) - the event will land on the timeline with score, color, severity, and actions already wired up, even though Manage Sources doesn’t show it yet.

Hazel - small thing on my side: the launch post listed “Hazel” as a single bundled score, but it’s actually an umbrella with three pieces. Hazel Mail (email rules) and Hazel Keepa (price-drop alerts) are bundled in v1, currently invisible due to the same INSTALLED bug above. The third one is a generic Hazel score for file automation rules (in my case it serves a Scanner rule), that’s the one you saw in “Available to install”. Naming will be clearer in v1.0.1.

Re: Claude Max - yes, real line item, and worth being honest about. I’m a 25-year sysadmin who writes shell and Python daily, not a Swift dev. Claude is the tool that lets me ship Mac-native code at the quality bar I want, as a solo indie. €220/month is the actual cost of making Tempo possible, and I’m not pretending otherwise. There’s more on this in the Is Tempo vibecoded? post if anyone’s curious.

Thanks again Rob, this is the kind of first-hour feedback that makes a launch actually useful. v1.0.1 will be in your Sparkle later today.

Leo

Update for anyone following: v1.0.1 and v1.0.2 rolled out .

v1.0.1 fixes the Manage Sources INSTALLED-section bug Rob caught - bundled scores now appear correctly even before receiving their first event. Hazel umbrella naming is also clearer.

v1.0.2 fixes a categorization bug where bundled umbrella scores (the canonical Hazel and the Scripts umbrella) weren’t being routed into their parent groups in Manage Sources, causing duplicate rows. Now they appear as “General” children under their respective parents.

Thanks again to Rob, and to anyone else poking at v1 today.

Leo