← Back to all sparks
A

Athlytics

ANALYTICS
Velocity0.0

🏃 An R package for advanced sports performance analysis and training load monitoring using Strava data.

A Strava analytics package spent its 1.0 cycle surviving rOpenSci review, not adding features.

sports-analyticsstravaropenscir-packagereproducibilitypeer-review
Current state
Athlytics computes endurance-training metrics — ACWR, EWMA load, efficiency factor, decoupling, personal bests — from Strava exports. Every release in view is review-driven: test-suite consolidation, dataset renames, styler passes, and a substantial robustness pass over the metric calculations and stream parsers. 1.0.6 explicitly changes nothing but packaging metadata.
Where it's heading
The package is optimising for credibility rather than surface area. It completed rOpenSci peer review, moved to an offline ZIP export workflow with hardened TCX/GPX parsing, corrected the EWMA half-life mapping, and deliberately softened its ACWR language away from injury-risk claims. Version numbers are also being published out of order, which makes the feed a poor guide to what shipped when.
Prediction
With review complete and packaging metadata frozen for archival, the next substantive release is more likely to extend metric coverage or data sources than to continue polishing; nothing in these entries points to a specific new metric.

Recent moves

  1. 2mo ago

    Packaging metadata standardised for archival

    Title strings are unified across DESCRIPTION, citation files, README and the JOSS paper, and a .zenodo.json is added so software deposits carry the right metadata. The release notes say outright that no analysis behaviour changed.

    View source ↗
  2. 2mo ago

    rOpenSci peer review completed; test suite consolidated

    Final reviewer feedback closes out: the suite drops from roughly 600 to 373 focused assertions with no warnings or skips, and purrr leaves the dependency list. Passing rOpenSci review is the credibility milestone this whole release cycle was aimed at.

    View source ↗
  3. 2mo ago

    ACWR and stream parsing corrected for real-world exports

    Load calculations stop treating missing pre-export history as zero-load rest days, EWMA gets a corrected half-life mapping and bootstrap confidence bands, and stream parsing handles ZIP exports, paused activities, GPS bounce-backs and namespace-prefixed TCX fields. The documentation also stops framing ACWR in injury-risk terms.

    View source ↗
  4. 6mo ago

    v1.0.2: Documentation & Review Fixes

    Review fixes with a breaking edge: sample datasets are renamed from athlytics_sample_* to sample_*, package-level docs and runnable vignette demos are added, and the startup message is dropped per rOpenSci guidelines. The rename is the part existing scripts will notice.

    View source ↗