← All Work
PaceKeep
Sports Tech & AITech Extension

PaceKeep

AI-native endurance platform analyzing recovery, training load, and Garmin data for personalized coaching.

The Challenge

Endurance athletes already generate plenty of raw data — HRV, sleep, training load, recovery scores — through devices like Garmin. Raw numbers on a dashboard don't tell a runner what to actually do with today's training, though. PaceKeep needed to turn that data into personalized, actionable coaching rather than one more set of charts to interpret alone.

Our Approach

We built PaceKeep as a React Native app backed by a Python FastAPI service and PostgreSQL. Training, sleep and recovery data syncs in automatically from a user's Garmin account via the Garmin Connect API, and instead of just visualizing it, an OpenAI-powered layer interprets recovery status, training load and historical trends together into personalized coaching guidance an athlete can act on.

Tech Stack

React NativePython / FastAPIPostgreSQLGarmin Connect APIOpenAI

System Architecture

Client

Cross-platform React Native app where athletes view recovery status, training load and coaching guidance.

React Native

API

Python FastAPI service handling user data, Garmin sync and the AI coaching layer.

PythonFastAPI

Data

PostgreSQL storing synced Garmin metrics, training history and generated coaching output.

PostgreSQL

Garmin integration

Syncs activity, sleep and recovery data from a user's Garmin account via the Garmin Connect API.

Garmin Connect API

AI coaching layer

Uses OpenAI to turn recovery and training-load metrics into personalized, actionable coaching guidance rather than raw charts.

OpenAI

Outcomes

Garmin data, synced automatically

Training, sleep and recovery metrics sync directly from a user's Garmin account via the Garmin Connect API — no manual entry.

AI-generated coaching, not just charts

OpenAI turns recovery and training-load data into personalized guidance an athlete can act on.

Cross-platform mobile app

A single React Native codebase delivers the experience across iOS and Android.

Built on structured athlete data

Recovery and training metrics are stored in PostgreSQL as structured, queryable history — a foundation for deeper analysis as the platform grows.

Building something similar?

Let's Talk