Features

What TrainStack can do for you.

An overview of the platform's capabilities -- multi-sport tracking, device sync, structured logging, and the analytics that set TrainStack apart from closed alternatives.

Multi-Sport Tracking

Running is live with dedicated pace, splits, and HR zone views. Cycling, climbing, swimming, and strength are next.

Device Sync

Apple Health sync is live today. Garmin, Strava, Whoop, Oura, and 12 more providers are on the roadmap.

Health and Recovery

Sleep, HRV, readiness, resting heart rate, and daily metrics from all connected devices on a unified timeline.

Structured Workouts

Create or import workout plans with interval targets for pace, power, and HR. See planned vs actual performance.

Equipment Tracking

Track gear lifecycle with distance, sessions, and retirement thresholds. Running shoes, climbing shoes, bikes, and more.

Open Source

Fully open source. Self-host on your own infrastructure, fork it, extend it. Your data stays yours.

Activity Tracking

TrainStack starts with running — dedicated activity cards with pace, cadence, elevation, HR zones, and per-km splits for both road and trail runs. Every other activity type synced from Apple Health is stored with universal metrics (duration, heart rate, calories, distance) and displays on a generic activity card. No data is lost — dedicated UI for additional sports is being added over time.

What's Next

The data model already supports sport-specific detail for cycling (power, cadence), climbing (per-ascent grades, styles), strength training (sets, reps, weight, RPE), and more. Dedicated UI for these sports will roll out as the platform grows. See the supported sports page for the full roadmap.

Sync and Data Sources

TrainStack syncs from Apple Health today via the iOS app, with background HealthKit sync keeping data up to date automatically. Garmin, Strava, Whoop, Oura, and 12 more providers are on the roadmap. See the full list on the integrations page.

Multi-Source Architecture

The data model is built for multi-source from day one. Every activity stores its source, original provider type, and raw data. When additional providers come online, TrainStack will detect duplicates and keep the best version -- you'll set source priorities and the system will use the richer, higher-priority record as the default while preserving everything from every source.

Lossless data

The raw data from each provider is preserved exactly as it arrived. TrainStack normalizes it into a consistent format for display (same units, same field names), but the original is always there. If a provider reports calories differently than another, you can see both the normalized value and the original.

Health and Recovery

Beyond activities, TrainStack tracks the data that informs how you train.

Sleep

Sleep sessions from Whoop, Oura, Garmin, and Apple Health sync automatically. Each session includes duration, sleep stages (deep, REM, light, awake), sleep efficiency, and recovery metrics like HRV and resting heart rate.

Daily Metrics

Daily summaries -- HRV, resting heart rate, readiness scores, weight, body fat, steps, stress -- from all connected sources. When multiple providers report the same metric, source priorities determine which one displays by default.

Calendar View

A unified calendar combines planned workouts, completed activities, sleep data, and daily metrics on a single timeline. See what you planned, what you did, and how recovered you were -- all in one place.

Equipment Tracking

Track the gear you use -- running shoes, cycling shoes, climbing shoes, bikes, harnesses -- and link it to activities. TrainStack tracks cumulative distance, duration, and session count for each piece of equipment. Set retirement thresholds (800km for running shoes, 500 sessions for climbing shoes) and get notified when gear is due for replacement. See the full details on the equipment page.

Supported Sports

Running is live with dedicated UI today. Every other sport ingests cleanly with a generic activity card — no data is lost, and dedicated support is being added over time without any changes to your existing data. See the full list on the supported sports page.

On this page