Inspiration

I always loved improving myseld in running. So when I came across the Shipaton, I thought of building a telemetry engine that would help people like me to improve, while also giving an immersive experience by letting users compete with friends and users across the world for the leaderboard. The aim is to encourage healthy competition in a gamified way.

What it does

The app tracks running, walking, and cycling telemetry across two distinct modes: Casual, which allows pausing and awards XP toward a permanent user Level, and Ranked, an unpauseable competitive mode awarding both XP and Performance Rating (PR).

PR determines competitive tiers across eight-week seasons, culminating in the exclusive Zenith rank for the weekly global top 100. Seasonal tier resets maintain fair competition, while cosmetics like avatars, frames, and profile banners reward milestone achievements. For added engagement, users can form clans to compete collectively, follow custom shared routes, match target paces with Pacer Strategy mode, or challenge opponent replays using Ghost mode.

How we built it

We built it from the ground up using:

  • Mobile Architecture & UI System: Built with React Native, Expo SDK 57, and Expo Router using a custom tactical "Obsidian Cyberpunk / Tactical HUD" aesthetic. We engineered lightweight, low-overhead custom SVG components (react-native-svg), dynamic radial/linear gradient vignettes, and multi-tier raster badge renderers (Bronze through Zenith) running at a locked 60 FPS.
  • High-Frequency GPS & Geodetic Engine: Developed a non-blocking GPS engine using expo-location and expo-task-manager. It uses Haversine spatial calculations, noise-filtering algorithms, and background task queuing to calculate real-time distance, speed, cadence, and altitude splits without battery drain.
  • Real-Time Ghost Racing Engine: Created an interpolation engine (GhostEngine) that projects an athlete’s real-time position against previous course records or rival benchmarks, computing dynamic lead/lag time deltas down to the millisecond.
  • Adaptive Pacer & Audio Coach: An algorithm-driven pacing engine that calculates real-time split deviations based on selected strategies (Negative Split, Positive Split, Even Split) and broadcasts audio pacing cues and Zone 5 cardiac redline warnings using expo-speech.
  • Cloud Backend & Offline-First Persistence: Powered by Supabase PostgreSQL for player profiles, competitive ranked tier divisions, and social contender matchmaking. We implemented an offline-first queue (SyncService) with optimistic UI updates and AsyncStorage caching so athletes can record in zero-connectivity environments.
  • Monetization & Entitlement Pipeline: Integrated RevenueCat (react-native-purchases) to manage subscriptions (Performa Pro), featuring a dual-mode pipeline that provides production StoreKit/Play Billing connectivity alongside an instant 1-tap Judge VIP sandbox mode for zero-friction evaluation.

Challenges we ran into

  1. High-Frequency GPS Drift and Battery Throttling: Operating a high-accuracy GPS loop while rendering real-time maps and visual HUDs can quickly heat devices and trigger OS throttling. We solved this by decoupling raw location capture into a background task pipeline and implementing a threshold-based Kalman smoothing algorithm that filters erratic GPS jitter without missing course corners.
  2. Ghost Interpolation Accuracy: Tracking lead/lag deltas against an asynchronous rival route caused ghost telemetry to jitter when athletes deviated from the exact course line. We resolved this by building an orthogonal projection algorithm that snaps the runner’s coordinate to the closest polyline segment before computing temporal deltas.
  3. Complex Gamified HUD Performance: Stacking high-resolution raster cosmetics, live gradient overlays, animated telemetry drawers, and map overlays caused layout stutter on lower-end devices. We refactored heavy views to use strict aspect-ratio containers, eliminated negative space with declarative flexbox styling, and memoized SVG gradient defs.
  4. Subscription Evaluation in Test Environments: Live in-app billing requires merchant bank verification and sandbox tester accounts that external judges cannot easily access. We architected a dual-mode RevenueCat service that supports live SDK calls while offering an automatic, simulated fallback with full entitlement propagation and VIP bypass.

Accomplishments that we're proud of

  • Aesthetic: Moving away from standard, boring white-and-orange fitness trackers to craft an authoritative, gaming-inspired dark obsidian HUD that makes personal fitness feel like a competitive tournament.
  • Ghost Racing: Delivering true millisecond-accurate lead/lag feedback in real-time, giving athletes the psychological edge of chasing an actual rival ghost avatar.
  • Fluid, Zero-Lag Record Engine: Designing an edge-to-edge tactical dock sheet that unifies sport selection, ranked non-stop mode, pacer strategies, sensor pairing, and start controls into an intuitive, zero-clutter interface.
  • Zero-Friction Offline Architecture: Building an offline-first syncing engine where workouts and telemetry are queued locally and synchronized with Supabase cloud databases the moment connection is re-established.
  • Resilient Pro Feature Architecture: Providing seamless access to high-tier instruments (Adaptive Pacer, Ghost Mode, Voice Coach) backed by RevenueCat.

What we learned

  • Mobile Telemetry Demands Extreme Discipline: Real-time spatial tracking leaves no room for unoptimized re-renders. Decoupling mathematical computation (pace smoothing, ghost deltas) from UI rendering state was essential for maintaining battery life and framerate.
  • Feedback Psychology Drives Athletic Adherence: Gamifying fitness isn't just about badges; it’s about instant, high-contrast feedback. Real-time visual and audio lead/lag cues push runners to hold their target pace far more effectively than static summary screens.
  • The Value of Dual-Track SDK Engineering: Designing third-party service wrappers (like our RevenueCat and Supabase layers) with robust offline fallbacks ensures your application remains completely reliable and testable in any demo, sandbox, or review environment.

What's next for Performa

  • Live Head-to-Head Multiplayer Sprints: Expanding Ghost Mode into live, synchronized multiplayer matches where athletes in different parts of the world can race simultaneously on mapped courses.
  • Direct BLE Sensor Matrix Integration: Adding direct Bluetooth Low Energy (BLE) peripheral streaming for continuous heart rate monitors, Stryd foot pods, and power meters with real-time zone analysis.
  • Wear OS & Apple Watch Companion Apps: Building standalone smartwatch companion extensions so runners can view ghost deltas and hear audio cues directly from their wrist.
  • Community Course Builder: Allowing users to create, verify, and publish ranked community courses with localized leaderboards and seasonal King-of-the-Hill division championships.

Built With

Share this project:

Updates

Submission history