Apple primer (02–03)
Every Swift and SwiftUI/Xcode primitive you need, mapped to the TypeScript and web concepts you already know — optionals, protocols, actors, @State, NavigationStack, Swift Charts, targets, schemes, provisioning.
The iOS app is a fitness tracker over a database you already fill. The CodingStats web app snapshots your WakaTime activity into Supabase every day (rescuing it from the 7-day free-tier window); the iOS companion reads that same database and asks the Apple-Health questions: did you hit your ring today, are you training inside your window, and are you overtraining?
Apple primer (02–03)
Every Swift and SwiftUI/Xcode primitive you need, mapped to the TypeScript and web concepts you already know — optionals, protocols, actors, @State, NavigationStack, Swift Charts, targets, schemes, provisioning.
The data spine (04–05)
The WakaTime → SvelteKit cron → Supabase pipeline as it exists today, the exact table shapes, and the architecture of the iOS client that consumes them — networking, caching, offline.
Coding fitness (06–09)
The product: preferred coding windows, daily & weekly goals, rest days, activity rings, burnout/sustainability analysis, AI-usage as a training signal, and client-facing invoicing.
Shipping (10)
Certificates, provisioning profiles, TestFlight, App Store review — the whole bureaucratic gauntlet, demystified once so you never fear it again.
Hands-on (11–12)
Tiered-hint challenges that walk you from “empty Xcode project” to “ring on a widget,” plus curated Swift/SwiftUI learning resources worth your time.
One person, honestly: a TypeScript/SvelteKit developer who owns codingstats.vercel.app and wants its data on an iPhone — as a real App Store app, not a web view. If that’s you (or someone shaped like you), every chapter assumes web-dev fluency and zero Swift.
🗣️ In plain English. You already track every minute you code. This guide teaches you to build the phone app that turns those minutes into something a fitness app would show you: goals, rings, rest days, warnings when you’re overdoing it — and clean per-project hour reports you can hand to a client with an invoice.