Airtime
Measure jump height from video by stepping through takeoff and landing frames
AI summary · website content
Find the workout and activity streaks you have already built in Apple Health. No manual logging. Apple Watch app and widgets. Free to start and private.
Sports & fitnessSwift · PythonGitHub @jackwallnerOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Fitness Habit Tracker: Auto: Automatic fitness streak discovery from Apple Health.
Translation pending
Taken from the repository README
Loading the full README.
Read the full README ↗Native iPhone + Apple Watch app that mines your Apple Health history for the fitness streaks you've already built — the ones you didn't realize were going — and nudges you to keep them alive.
project.yml → .xcodeproj)# Requires: brew install xcodegen
xcodegen generate
open FitnessStreaks.xcodeproj
Or from CLI:
xcodebuild -project FitnessStreaks.xcodeproj \
-scheme FitnessStreaks \
-destination 'generic/platform=iOS' build
./scripts/testflight.sh
Requires Xcode signed in (Settings → Accounts) with team YXG4MP6W39.
Four targets, all sharing Shared/:
| Target | Bundle ID | Platform |
|---|---|---|
| FitnessStreaks | com.jackwallner.streaks | iOS |
| FitnessStreaksWidget | com.jackwallner.streaks.widget | iOS |
| FitnessStreaksWatch | com.jackwallner.streaks.watch | watchOS |
| FitnessStreaksWatchWidget | com.jackwallner.streaks.watch.widget | watchOS |
App group: group.com.jackwallner.streaks
Models/StreakMetric.swift — enum of metrics + per-metric threshold ladders + display.Models/Streak.swift — Streak (current/best/threshold/progress) + ActivityDay.Models/DailyActivity.swift — SwiftData @Model cache row.Services/HealthKitService.swift — HK auth, daily history fetch across 9 metrics, background delivery, SwiftData upsert.Services/StreakEngine.swift — the core. Scans history and picks, per (metric, cadence), the highest-threshold tier with an active streak — daily and weekly. Ranks by an interestingness score.Services/StreakStore.swift — @MainActor ObservableObject that drives the iOS + watch UI.Services/StreakSettings.swift — user prefs + SnapshotStore that persists the top streaks to App Group UserDefaults so widgets can render without hitting HealthKit.Services/DataService.swift — SwiftData container scoped to the app group.Services/NotificationService.swift — daily 7pm at-risk reminder.Utilities/Theme.swift, Utilities/DateHelpers.swift.HKWorkout; sleep attributed to the day each asleep sample ended on).current ≥ minLength (3 days / 2 weeks).score = length × metricWeight × tierBonus. The top one is the hero; the rest are badges.Personal project.