Skip to content

rzen/lapbuddy

Repository files navigation

README

LapBuddy is a native iOS swimming lap counter/stopwatch app built with SwiftUI. It helps swimmers track laps, times, and rest intervals during swim sessions.

Key Features

Core Timing & Sessions

  • Apple Watch-Style Analog Stopwatch - Dual color-coded second hands, minute sub-dial, lap distribution histogram for at-a-glance consistency feedback
  • Smart Session Management - State machine-driven stopwatch (reset/running/paused/completed) with streamlined session creation and background continuation
  • Automatic Session Recovery - Sessions persist across app terminations; automatically restores exact timing state (running/paused) with background time tracking when relaunching
  • Timeline Session Browser - Infinite-scroll feed with calendar icons, media carousels, session notes, and single-line summaries; tap cards to view details

Performance & Analytics

  • Achievements System - 22 achievements across 8 categories (milestones, consistency, speed, volume, endurance) with automatic tracking and progress display
  • Auto-Update Benchmark Records - Automatically detects and records 50m time trial PRs from completed sessions with cascade deletion
  • Lap Time Distribution Charts - Visual histograms with adaptive bucketing and reference lines showing consistency patterns at a glance

Media & Documentation

  • Photos & Videos - Capture media during swims with smart overlays (capture time + lap number), full-screen viewer with auto-play videos
  • Session Notes - Add notes from SessionView or stopwatch; view in context within Timeline cards
  • Smart Media Carousels - Frosted glass overlays showing exact capture time and calculated lap number for each photo/video

Data Management & Sync

  • Multi-Athlete Support - Track sessions and achievements separately for multiple athletes with configurable default athlete
  • iCloud Sync - Automatic cross-device syncing with real-time Timeline updates when sessions are created/edited/deleted
  • Session Export/Import - Complete .lapbuddyexport ZIP archives with metadata and media; share via AirDrop, Messages, or Files app
  • Backup & Restore - JSON-based compressed backups with progress tracking, validation, and Files app access for manual management

Release Notes

User friendly releases notes

More technical releases notes

About

A little iPhone app for tracking lap swims

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors