Show HN: Chronoid – a local Mac time tracker (why I ditched DuckDB for SQLite)
I've been building Chronoid, a native macOS time tracker. It runs in the menu bar and automatically logs apps, windows, and file activity using macOS accessibility APIs. Everything is stored locally, no sync or cloud service.
At first I tried using DuckDB as the storage engine. It looked promising for analytics, but after ~2 weeks I realized it was overkill for my needs—extra dependencies, trickier integration, and not much real benefit at the scale of a single-user app. I switched to SQLite, and it turned out to be the simpler, more reliable choice. The codebase got smaller and the app more stable.
A few details:
Written in Swift + SwiftUI
Always-on logging in the background
Local storage in SQLite
Focused on privacy and being lightweight
I'd love feedback on:
Tradeoffs you've seen between DuckDB, SQLite, or other embedded DBs
Patterns for handling long-running background apps on macOS
Ideas for making time-tracking data more useful to freelancers/indies
App: chronoid.app
I haven't open-sourced it (yet), but I'm happy to dive into implementation details in the comments.
Thanks, Vu
No comments yet