Skip to content
Zenbu

Train, eat and track. Offline first.

Zenbu is a native iPhone log for workouts, nutrition, bodyweight and daily protocols. It never needs an account to log, and syncs when you sign in.

Zenbu Home tab showing today's calories, macros and protocols with sample data

One app, five tabs

How it's built

A solo project built end to end: native client, backend, infrastructure and release.

SwiftUI app
Swift 6, iOS 17+. Local SQLite via GRDB, so logging works offline and without an account. Views go through a store and repository layer, never straight to files or the network.
Sync
Changes are written to a local outbox in the same transaction as the data, then sent with idempotent requests, revision checks and explicit conflict resolution.
Go API
A Go service handles sync, food search and AI estimation, with integration tests against a real database.
PostgreSQL
Account data lives in Postgres on private managed infrastructure. Migrations are versioned and checked against the deployed binary.
AI food estimation
An optional photo-to-nutrition flow. The estimate is a draft the user reviews; the photo is not kept.
Sign in with Apple
Server-verified nonce and JWT, session in the Keychain. Signing out keeps local logs.
Hosting
The API runs on AWS Lightsail behind Caddy. Apple Health data never leaves the phone.
Testing
Simulator UI journeys per tab as the main quality gate, plus unit tests focused on sync, data safety, imports and migrations.

Get Zenbu

Zenbu is in TestFlight testing. A public link will be posted here.

Link coming soon