Case Study
Swing Coach
Golf swing analysis from zero to production
Type
Product Design & Engineering
Focus
Computer Vision, Mobile UX, Real-Time Data
Year
2026
Overview
Golfers with access to professional swing analysis improve faster. Tools like TrackMan cost $15,000–$25,000. One-shot AI feedback has no memory. I built Swing Coach to bridge the gap — browser-native computer vision, persistent history, and zero installation.
The project went from concept to production in under a week. Everything runs client-side using MediaPipe's PoseLandmarker — no backend, no data storage costs, no app store dependency. The result is a tool that works on any modern phone or laptop, remembers every session, and shows progress over time.
The Problem
Access gap in swing analysis
Professional-grade tools are priced for tour players and coaches. Free alternatives — asking a friend, posting to Reddit, or getting a one-shot AI opinion — don't retain context. Every session starts from scratch. There's no way to see if you've actually gotten better.
The memory problem
Even if you get useful feedback once, you can't track change over time. Hip rotation at 32° in week one, 38° in week three — that data doesn't exist anywhere unless someone built a system to capture it. That's what was missing.
Design Approach
Spec-first. Before writing a line of code, I wrote the product — seven documentation files defining the UX rules, design system, feedback engine logic, data model, component specs, engineering constraints, and phased task list.
3-screen focus
Record or upload → analyze with pose overlay and metrics → review session history. No feature creep. Every screen has a single job.
Client-side everything
MediaPipe runs in the browser. No backend means no latency, no server costs, no data privacy concerns. The model downloads once, runs locally forever.
Persistent by default
Every session auto-saves to localStorage. Users don't opt in to tracking — tracking is the product. History is the differentiator.
What Was Built
Pose Detection
MediaPipe PoseLandmarker with 33 body landmarks tracked at 60fps. Gold skeleton overlay drawn on a canvas element layered over the playback video.
Swing Metrics
Hip rotation and shoulder rotation calculated live from landmark coordinates. Tempo ratio derived from frame timing. All values update in real time during playback.
Feedback Engine
Rule-based system with configurable thresholds. Maximum 2 insights per session. Plain English, action-oriented. No jargon, no scores — just what to work on.
Session History
Auto-saves every completed analysis to localStorage. Progress charts (Recharts) show hip rotation, shoulder rotation, and tempo over time with trend indicators.
Mobile Polish
48px minimum tap targets throughout. Full-height camera view with floating record button. Single-column stacked layout on mobile, 2-column on desktop. getUserMedia + MediaRecorder for live recording.
Outcome
A fully functional golf swing analyzer live at swing-coach.vercel.app. Where a one-shot AI gives you an opinion, Map My Swing remembers every swing and shows your progression.
The spec-first approach paid off. Seven documentation files meant every component had a clear contract before it was built. When something needed changing, it changed in one place. No drift, no inconsistency, no debugging design decisions mid-build.
< 1 week
Concept to production
0
Backend infrastructure
7
Spec documents written before code