# Project Summit — adaptive, recovery-driven training plans (iOS)

**URL:** <https://forum.intervals.icu/t/project-summit-adaptive-recovery-driven-training-plans-ios/130696>\
**Category:** External Projects\
**Created:** [15 July 2026 18:33 UTC](https://forum.intervals.icu/t/project-summit-adaptive-recovery-driven-training-plans-ios/130696 "2026-07-15T18:33:46Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![jespanyol](https://forum.intervals.icu/user_avatar/forum.intervals.icu/jespanyol/32/87017_2.png) [@jespanyol](https://forum.intervals.icu/u/jespanyol)\
**Post date:** [15 July 2026 18:33 UTC](https://forum.intervals.icu/t/project-summit-adaptive-recovery-driven-training-plans-ios/130696/1 "2026-07-15T18:33:46Z")

</div>

Hey all —

I’m Jordi, the solo builder behind Project Summit, an iOS training app for self-coached endurance cyclists. intervals.icu is part of my own daily stack, so this feels like the right room to show it.

I built Summit while preparing the Gran Diagonal — 999 km across Portugal, six days. Somewhere in that build-up I got tired of the same morning: you wake up with nothing in the legs, the plan wants a hard day, and you’re the one who has to decide — trust the plan or trust your body? — while stitching that call together across three different apps.

So I built the thing that makes that call with me.

**What it does:** you set a goal and a date, and the engine builds the plan. Then every morning it reads your recovery from Apple Health — HRV, resting HR, sleep — and adjusts today’s session to match: ease off when you’re cooked, push when you’re ready. It’s the daily judgement a coach makes for you, done from your own numbers.

 ![IMG_5336](https://forum.intervals.icu/uploads/default/original/3X/1/e/1ed6e3711abaa967fe76daa79c8c1e267446af59.png)

Being native iOS, that adaptation lives on the device you already carry. Pair it with an Apple Watch for cleaner recovery data, and Summit can nudge you with a notification when today’s plan should change — nothing to remember to open.

The engine is deterministic: same inputs, same output, and you can always open up _why_ it picked today’s session.

**Race-day nutrition:** Summit builds a carb / fluid / sodium plan for your target event from its duration, intensity and the weather. For the long stuff — gravel, ultra — it’s the feature I lean on most myself.

 ![Captura 2026-07-16 a las 14.18.48](https://forum.intervals.icu/uploads/default/original/3X/b/4/b44d80b0e94114e7555a6d20e320bc98cae76da0.jpeg)

**How it fits with intervals.icu:** Summit connects directly to Strava and Hammerhead, and uses intervals.icu as its distribution hub to push planned workouts out to Garmin, Zwift, MyWhoosh, Wahoo and the rest. Keep your analysis where you already like it — Summit handles the planning, the daily adaptation and the fuelling, and lets intervals.icu carry the workouts to your devices.

**Roadmap** (tell me if I’ve got the priorities wrong): watchOS app, home-screen widgets, and multisport beyond cycling.

iOS-only for now, 14-day free trial, live on the App Store: [https://apps.apple.com/app/id6754172654](https://apps.apple.com/app/id6754172654)

I’ll keep this thread as Summit’s home here — bug reports, feature requests and “why doesn’t it do X” all welcome.

One thing I’d like to know from you: **when your recovery says one thing and your plan says another, what do you trust on the day — and what would you want an app to show you to make that call?**

Jordi.  
[https://projectsummit.app](https://projectsummit.app)

---

<div class="post-metadata">

**Author:** ![jespanyol](https://forum.intervals.icu/user_avatar/forum.intervals.icu/jespanyol/32/87017_2.png) [@jespanyol](https://forum.intervals.icu/u/jespanyol)\
**Post date:** [4 August 2026 15:18 UTC](https://forum.intervals.icu/t/project-summit-adaptive-recovery-driven-training-plans-ios/130696/2 "2026-08-04T15:18:18Z")

</div>

Following up on my own roadmap from this thread, since two of the three things I listed have shipped.

**Widgets (v1.3).** Recovery, today’s load and your next session on the Lock Screen and Home Screen. Also App Intents, so you can ask Siri or Spotlight for today’s session (type · duration · TSS) or your readiness (recovery · sleep · load) without opening anything. Read-only, deliberately.

**The sleep engine (v1.4).** This is the one I want feedback on. The old score compared your night against a generic ideal, which I’d come to think was the wrong question — a 6h45 night means something very different for me than for someone who habitually sleeps eight. So it now scores **against your own historical median** rather than an absolute target. The detail view shows the reasoning: where last night sits in your personal range, a sleep-debt chart, stages and rhythm.

Recovery, sleep and load are also three separate cards now instead of one blended number, and the readings follow your trend over the past month rather than just this morning’s value.

**One thing I should have said in the first post:** the recovery score, the sleep score and its full breakdown, the recovery trend and the widgets are **free, permanently**. Not the trial — the free tier. I mentioned the 14-day trial originally and never mentioned this, which was daft, because it’s the part most of you would actually use. If you already wear something that writes HRV and sleep to Apple Health, that’s the whole thing, at no cost.

Also fixed in v1.4, in case it bit anyone here: heart rate and HRV were being double-counted between Sleep and Recovery and distorting both scores; Karoo activities without a power meter could lose their HR, elevation, speed and cadence; and a second recovery reading in the morning could change your session for no real reason.

Still nobody has answered the question I ended the first post with, so I’ll ask it more concretely: **when the score disagrees with how you actually feel, what would make you trust the number over the feeling — or is that a lost cause?** I’ve seen enough people say the data should be descriptive, not prescriptive, that I’d rather build for that view than argue with it.

Bug reports and “why doesn’t it do X” still welcome here.

---

<div class="post-metadata">

**Author:** ![jespanyol](https://forum.intervals.icu/user_avatar/forum.intervals.icu/jespanyol/32/87017_2.png) [@jespanyol](https://forum.intervals.icu/u/jespanyol)\
**Post date:** [17 September 2026 07:23 UTC](https://forum.intervals.icu/t/project-summit-adaptive-recovery-driven-training-plans-ios/130696/3 "2026-09-17T07:23:42Z")

</div>

![summit-1.5.0-forum-b](https://forum.intervals.icu/uploads/default/original/3X/9/d/9d29ba08cc7a0a8d25d6658d281fbcea89114e6b.jpeg)

v1.5.0 is out (iOS 27 ready). One change is aimed squarely at people on this forum, so I’ll lead with it.

**Recovery without Apple Health.** Last time I said the free recovery score needs something writing HRV and sleep to Apple Health. That’s no longer the case. If your Garmin, Whoop or other device syncs wellness to intervals.icu, Summit now reads the full set from there (HRV, resting HR, sleep, SpO2) and calculates Recovery directly from it. For many of you intervals.icu is already where that data lives, so this was overdue.

**Fixes worth knowing if you use the intervals.icu sync:**

- The intervals.icu or Karoo connection could show as disconnected after signing out or reinstalling. When that happened, workouts silently stopped being sent to intervals.icu, Garmin and Zwift. If planned sessions went missing on your head unit, this was probably why.
- The “reconnect your integration” warning could appear even when the connection was fine.
- LTHR was resolved differently depending on the screen. Some of you saw “–” and no HR zones while your rides were still being scored in the background. It’s now consistent across the app, which also shows which source it’s using.
- Route maps were missing on some Karoo activities.

**Plan logic.** A bug I’m not proud of: an improvement in recovery alone could escalate a key session (e.g. Threshold → VO2max), even in weeks where intensity should never go up. An adjustment could also stay stuck after the condition that caused it no longer applied. Both are fixed.

**Sleep, again.** v1.4 moved the score to your own historical median. 1.5 recalibrates it further so a night that’s normal _for you_ isn’t penalised. Most people will see their score rise slightly.

**Everything else:**

- Season goals: pick your starting point during onboarding (race, build fitness or maintain) and switch goals anytime in Settings.
- Race nutrition rebuilt: hour-by-hour plan, more accurate carb/sodium/caffeine numbers, per-stage calculation for multi-day events, and available offline on race day.
- The Load card on Today now shows how hard you actually trained compared with your recent history, instead of a percentage nobody could interpret. Its detail view has a clear summary.
- The weekly strip and heatmap are coloured by compliance: green completed, amber partial, red skipped.
- Effort calculator reworked, so it’s easier to play with how long you can hold an effort before blowing up.
- New typography and colours, revised to meet accessibility contrast.
- Recovery data from one account could briefly show after switching to another account on the same device. It’s now reliably cleared on sign-out.

The last question didn’t land, so here’s an easier one: **if you sync wellness into intervals.icu, which fields do you actually have populated?** I’d like to know how often sleep stages or SpO2 are missing, so the recovery score copes with gaps efficiently.

Bug reports and “why doesn’t it do X” still welcome.
