Skip to content

stats.store: Privacy-First Sparkle Analytics

Published:
3 min read

tl;dr: I built a free, open source analytics backend for Sparkle because all existing solutions are ancient, and I wanted to know how many people use VibeTunnel without being creepy about it.

I’m philosophically against deep app analytics. Everything I make is open source and free, and integrating an analytics SDK just didn’t feel right. Sparkle has this neat little system profiling feature that’s perfect for people like me - it just tells you the macOS version and how many people opened your app this week. No IP addresses, no invasive tracking, just enough to stay motivated.

The problem? When I checked for backend implementations, everything was ancient. So naturally, I thought: “How hard can it be?”

Building stats.store with agents

I fired up Google’s AI Studio and wrote a simple spec (you can see it on GitHub). Then I fed it into v0 - they use Next.js, Supabase, Tailwind, and shadcn/ui, a stack I already know and love.

After about five or six rounds of typing “continue” into v0, I had something workable. But v0 is great for frontend, less so when things get complex. It started making mistakes it couldn’t fix. So I synced to GitHub and let Claude Code take over. Claude added tests, dark mode, improved the design, and fixed the API flow.

Total time? Six hours. All while working on the next VibeTunnel release. Plus an hour picking the perfect domain (I really like stats.store).

What is stats.store?

It’s exactly what I needed: a modern, privacy-first analytics backend for Sparkle. You get basic update statistics, macOS version distribution, and a clean dashboard - all while respecting user privacy.

What gets collected:

What doesn’t get collected:

Everything is designed to answer simple questions: How many people use my app? What macOS versions should I support? When do people actually update? The whole thing is open source and MIT-licensed.

Free for Open Source

Here’s the deal: if you’re building open source Mac apps, it’s completely free. I’ll cover the hosting (Vercel and Supabase make this pretty cheap anyway).

Want in? Just email me. I’ll add your app to the backend - and by backend, I mean I’ll literally go into Supabase and edit the table. We’re keeping it scrappy. All you have to do is redirect the appcast URLs, stats.store will fetch the correct one and pass them along.

If enough people join, we’ll have a nice community dataset showing how fast Mac users update their OS and what hardware they’re running. Could be interesting!

Try It

Check out stats.store. If you have a Sparkle-based Mac app and want simple, privacy-respecting analytics, let me know. Together we can build something useful for the Mac developer community.

Questions? Hit me up on Twitter or email.

New posts, shipping stories, and nerdy links straight to your inbox.

2× per month, pure signal, zero fluff.


Edit on GitHub