Changelog

New features, improvements, and fixes.

Shipping activity

1,840 contributions in the last year

IMPROVED

Unified Workouts Across Every Source

  • WHOOP, Apple Health, and Strava workouts now live in a single timeline instead of three separate pages
  • Source badges show at a glance which device recorded each session so duplicates are easy to spot
  • Sport-level and session-level views share one design and one set of charts, so switching sources never feels like a different app
  • Behind the scenes the per-source controllers, blade views, and JS bundles were collapsed into one unified pipeline, cutting the surface area for bugs
IMPROVED

Refreshed Design System

  • Dashboard, connections, billing, profile, and export pages have been redesigned around the new Mintlify-inspired dark-first system
  • Consistent typography, spacing, and rounded surfaces across the whole app, no more mismatched corners between pages
  • New reusable Inside component library (cards, rings, sparklines, metric tiles, segmented controls) so future pages ship faster
  • Provider logos, source badges, and chart colors now follow a single design token set instead of one-off hex values
NEW

Foundations for Smarter Insights and New Devices

  • Introducing the Control Center scaffold, the home for AI-driven readiness, recovery, and actionable insights coming in the next releases
  • New Readiness and Insights services compute a unified daily snapshot from WHOOP, Apple Health, and Withings data instead of one number per source
  • Date of birth on profiles unlocks age-aware HR zones, VO2 max trends, and longevity metrics later on
  • New device anchor-reset support lets the iOS app re-pair without losing history, paving the way for Garmin, Oura, and other integrations
  • Provider asset library and source badges make it trivial to plug new devices into the UI as they come online
IMPROVED

Account, Billing, and Sync Hardening

  • Email changes now require verification on the new address before they take effect, with a notification sent to the old address
  • Password changes regenerate your session so a stolen cookie cannot outlive a password reset
  • Stripe webhooks are now idempotent, no more duplicate plan updates if the same event is delivered twice
  • Subscription sync handles concurrent webhook and checkout races safely
  • Apple Health ingest validates payloads more strictly, catching malformed samples before they hit the database
  • WHOOP and Apple Health sync paths got several performance and stability fixes uncovered while building the new design
NEW

API, AI Assistant, and MCP Integration

  • Public REST API is live, query your recovery, sleep, workouts, and body composition data programmatically
  • New MCP (Model Context Protocol) server lets Claude, ChatGPT, Cursor, and other AI assistants read your health data directly
  • Ask an AI "how has my HRV trended this month?" or "find workouts where my strain exceeded 15" and get real answers from your data
  • Build custom dashboards, automations, and exports with any language or tool that speaks HTTP
  • Pipe your health metrics into n8n, Zapier, or your own scripts to trigger workflows based on recovery scores
  • Use AI to draft weekly recaps, spot patterns, or correlate sleep with workout performance without writing SQL
  • Copyable markdown docs on every API page make it trivial to paste endpoint specs straight into an LLM
IMPROVED

Redesigned Landing Page and Refreshed Documentation

  • Brand new marketing site with a cleaner layout, clearer messaging, and faster load times
  • Documentation has been rewritten from the ground up with better structure, real examples, and searchable content
  • Scroll-aware sticky nav, self-contained footer, and local Prism syntax highlighting for code samples
  • Pricing page tweaks make free vs Pro differences easier to understand at a glance
  • Onboarding now shows progress so new users know exactly what is left before their first sync completes
IMPROVED

Sleep and Weight Personal Records

  • Workouts pages (WHOOP and Apple Health) now show your longest and shortest sleep nights in Personal Records
  • Lowest and highest recorded weight also appear alongside workout PRs, with dates
  • Sleep data comes from WHOOP sleep sessions (naps excluded), weight from Withings or WHOOP body measurements
  • Apple Health users see sleep and weight highlights pulled from Apple Health data
  • Both Lifetime Benchmarks and Current Period Highlights cards include the new records
IMPROVED

VitalTrends Sync App Improvements

  • The VitalTrends Sync iOS companion app is live and we are continuing to improve it
  • Currently testing background uploads so your health data syncs automatically without opening the app
  • More updates coming soon, stay tuned
IMPROVED

Smarter Chart Aggregation for Long Ranges

  • Charts now auto-bucket based on the selected date range so long windows stay readable instead of turning into a dense smear of points
  • Up to 30 days: daily points, exactly like before
  • 31 to 90 days: weekly buckets (Monday-start weeks)
  • 91+ days: monthly buckets
  • Applies across WHOOP, Apple Health, Strava, and public shared charts. Sums stay sums (steps, distance, calories), averages stay averages (HRV, RHR), and max-type series (max HR) keep the peak
IMPROVED

Apple Health Sleep Total Accuracy

  • Fixed a bug where the Total Sleep line on the Sleep Stages chart could show roughly double the actual sleep time
  • Some iPhones log both a full-night "asleep" envelope and the detailed core/deep/REM breakdown, which was being double-counted in the total
  • The total now drops the redundant envelope when detailed stages are available, while legacy nights with only "asleep" still contribute as expected
  • No data changes required, the fix applies to all existing nights