PointTracer
A full-stack sports analytics platform that transforms raw GPS and fitness activity data into segmented, interactive replays for point-based and interval sports. Built solo over eight weeks from a single question: can GPS data automatically identify the individual points inside a longer sports activity?
Feature Highlights
Sports-Aware Segmentation
A heuristic algorithm divides a continuous GPS recording into individual points, rallies, and intervals — detecting pauses, restart strength, sustained low-speed periods, and off-field tails. Segments carry explanation tags (auto-detected, pause-based, restart-based) rather than artificial confidence scores.
Synchronized Interactive Replay
A shared playback clock drives map position, current-segment highlighting, pace graph tracer, HR graph tracer, and timeline position simultaneously. Clicking or scrubbing any chart updates the entire interface. Session View covers the full activity; Focus Segment provides per-effort detail.
Multiplayer Timestamp Alignment
Multiple GPX or FIT participants align onto a shared playback timeline with individual time offsets and position interpolation. Players who haven't started or have finished hold their first or last valid position — no invented movement. Per-player names, colors, display modes, and an invite-link join flow.
Recovery & Performance Analytics
HR drop, recovery duration, recovery rate, and recovery classification (passive / active / incomplete) are derived per segment. A bounded Energy % line tracks accumulated load across the session. Performance preservation compares each effort against an early-session baseline to detect real output decline.
Density Heatmaps
An occupancy heatmap renders a continuous spatial density surface from GPS readings — a unified outer footprint with thresholded internal hotspot regions in selected-color shading. A speed-by-area mode shows how movement intensity varies across the field. Heatmaps can be restricted to segmented play only.
Vertical Video Export
A dedicated 9:16 render scene — not a screen recording — produces mobile-ready replays with the selected basemap, trace style, player marker, speed card, elapsed time, segment indicator, and PointTracer branding. Editing controls, analytics, and settings are excluded by design. Supports segment-only export and pre-play streak visualization.
Strava OAuth Integration
Users connect their Strava account through a full OAuth flow — authorization, backend token exchange, token refresh, and local persistence. Imported activity streams can include location, time, distance, heart rate, speed, cadence, movement state, altitude, and temperature, then open directly in the normal review experience.
Segmenter Evaluation Tooling & ML Branch
Seven manually corrected ultimate frisbee fixtures serve as ground truth. A backend evaluator reports count error, average boundary timing error, missed and extra segments, and per-activity score against every fixture. An experimental gradient-boosted ML segmenter with leave-one-out cross-validation runs in parallel with the heuristic baseline.
Development Timeline
Stack
Frontend
React · TypeScript · TanStack Start & Router · Vite · Leaflet · MapTiler · Radix UI
Backend & Infra
Python · FastAPI · Uvicorn · PostgreSQL · Docker · Railway · Vercel
