# A new Intervals Companion App. With widgets!

**URL:** <https://forum.intervals.icu/t/a-new-intervals-companion-app-with-widgets/92334>\
**Category:** External Projects\
**Created:** [28 February 2025 14:28 UTC](https://forum.intervals.icu/t/a-new-intervals-companion-app-with-widgets/92334 "2025-02-28T14:28:47Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![spmcewen](https://forum.intervals.icu/user_avatar/forum.intervals.icu/spmcewen/32/63805_2.png) [@spmcewen](https://forum.intervals.icu/u/spmcewen)\
**Post date:** [28 February 2025 14:28 UTC](https://forum.intervals.icu/t/a-new-intervals-companion-app-with-widgets/92334/1 "2025-02-28T14:28:47Z")

</div>

Hello. I’m the creator of the Intervals Companion app that many (1400 actually!) of you have found recently:

[https://apps.apple.com/us/app/intervals-icu-companion/id6739638454](https://apps.apple.com/us/app/intervals-icu-companion/id6739638454)

I haven’t posted here much, but I’ve used intervals.icu for years, and it has become the central hub for all my training data. My original goal was to create automatically updating widgets to show fitness, fatigue, and form values on iPhone and Apple Watch. I had the idea for quite some time, but when I realized there’s an easy-to-use and well-documented API (thanks, David!), I realized I might be able to make something useful. I got a new M4 Mac mini, which made running Xcode a less frustrating experience, and I dove in.

The app grew from that original idea with interactive graphs, future wellness data and upcoming workouts, the activity list, the vitals screen, _many_ more widgets, and other bits like the ability to sync Zwift activities to Apple Health. I’m a fan of the sport summary widget with configurable distance and time-based goal rings. The next release will be in a week or two and will include a new totals screen for showing daily/weekly/monthly distance, time, elevation, and load totals for a customizable set of activity types across the selected time range. The graphs on the vitals and totals screens will support drag-and-drop to change their order too. See the image at the end of this post for a preview. I’m also happy to share details about the auto-updating widgets and any other features with anyone interested.

 ![IMG_4701](https://forum.intervals.icu/uploads/default/original/3X/4/9/49dd7f0e4da2aa4278a1ea017672e6e888459992.png)

Thank you!  
Spencer

---

<div class="post-metadata">

**Author:** ![CanyonStefan](https://forum.intervals.icu/user_avatar/forum.intervals.icu/canyonstefan/32/45441_2.png) [@CanyonStefan](https://forum.intervals.icu/u/CanyonStefan)\
**Post date:** [2 March 2025 21:11 UTC](https://forum.intervals.icu/t/a-new-intervals-companion-app-with-widgets/92334/2 "2025-03-02T21:11:07Z")

</div>

Many thanks for doing the effort Spencer - highly appreciated!

---

<div class="post-metadata">

**Author:** ![Patrick\_McNally](https://forum.intervals.icu/user_avatar/forum.intervals.icu/patrick_mcnally/32/51321_2.png) [@Patrick\_McNally](https://forum.intervals.icu/u/Patrick_McNally)\
**Post date:** [3 March 2025 17:40 UTC](https://forum.intervals.icu/t/a-new-intervals-companion-app-with-widgets/92334/3 "2025-03-03T17:40:26Z")

</div>

This companion app is super slick, very nice work! I even have a few of the widgets on my MacOS desktop. Thanks for the work

---

<div class="post-metadata">

**Author:** ![mth710](https://forum.intervals.icu/user_avatar/forum.intervals.icu/mth710/32/51624_2.png) [@mth710](https://forum.intervals.icu/u/mth710)\
**Post date:** [3 March 2025 21:20 UTC](https://forum.intervals.icu/t/a-new-intervals-companion-app-with-widgets/92334/4 "2025-03-03T21:20:10Z")

</div>

Great - I use intervals also on mobile and often thought an app would be nice to have.

---

<div class="post-metadata">

**Author:** ![spmcewen](https://forum.intervals.icu/user_avatar/forum.intervals.icu/spmcewen/32/63805_2.png) [@spmcewen](https://forum.intervals.icu/u/spmcewen)\
**Post date:** [3 March 2025 21:49 UTC](https://forum.intervals.icu/t/a-new-intervals-companion-app-with-widgets/92334/5 "2025-03-03T21:49:22Z")

</div>

Thanks everyone! Version 1.1 with the new Totals screen is out now. I’m also glad to hear people are trying the widgets on macOS, I have my desktop full of them as well.

 ![Screenshot 2025-03-03 at 4.48.00 PM](https://forum.intervals.icu/uploads/default/original/3X/9/d/9da3e2f307d3eb650946ec9b34c84a02f35623ba.jpeg)

I like having a dedicated screen on my iPad too:

 ![Simulator Screenshot - iPad Pro 13-inch (M4) - 2025-02-28 at 21.23.35](https://forum.intervals.icu/uploads/default/original/3X/2/d/2d50c4da2b3a725b33d9ebe7a6853711db9aa01b.jpeg)

---

<div class="post-metadata">

**Author:** ![Bill\_Cahill](https://forum.intervals.icu/user_avatar/forum.intervals.icu/bill_cahill/32/26644_2.png) [@Bill\_Cahill](https://forum.intervals.icu/u/Bill_Cahill)\
**Post date:** [4 March 2025 01:53 UTC](https://forum.intervals.icu/t/a-new-intervals-companion-app-with-widgets/92334/6 "2025-03-04T01:53:08Z")

</div>

This looks great, and would love to try it. I can’t figure out how to use my Strava credentials to log in (like I do on the website).

---

<div class="post-metadata">

**Author:** ![Filippo](https://forum.intervals.icu/user_avatar/forum.intervals.icu/filippo/32/30791_2.png) [@Filippo](https://forum.intervals.icu/u/Filippo)\
**Post date:** [4 March 2025 09:10 UTC](https://forum.intervals.icu/t/a-new-intervals-companion-app-with-widgets/92334/7 "2025-03-04T09:10:55Z")

</div>

Hi, thanks for this app! I have added a couple of widgets to my mac too. couple of questions

1. how do I “force” them to be in color (if possible) and not in b/w? like this, when I’m using other windows on top  
 ![Screenshot 2025-03-04 alle 10.09.28](https://forum.intervals.icu/uploads/default/original/3X/5/5/55bfa96029b8c67910fa5c717e122d69cfccb3f9.png)
2. I have my app setup to use metric system and I see my weight in kg but the widget shows my weight in pounds, how do I change it?

thanks!

---

<div class="post-metadata">

**Author:** ![spmcewen](https://forum.intervals.icu/user_avatar/forum.intervals.icu/spmcewen/32/63805_2.png) [@spmcewen](https://forum.intervals.icu/u/spmcewen)\
**Post date:** [4 March 2025 12:12 UTC](https://forum.intervals.icu/t/a-new-intervals-companion-app-with-widgets/92334/8 "2025-03-04T12:12:30Z")

</div>

For the widget colors, that’s partially determined by macOS. If you go to the Settings → Desktop & Dock you should see these options:

 ![Screenshot 2025-03-04 at 7.06.44 AM](https://forum.intervals.icu/uploads/default/original/3X/7/c/7ccac8dc087103980a1176a70729d3bba76be8ff.png)

Changed widget style to full-color. With automatic or monochrome selected, macOS will automatically remove the color unless you are showing only the desktop.

For the new weight widget not showing in metric, that’s a bug, thanks for finding it! Widgets have access to the settings from the full app but needs to be looked up in a special way that I missed. This will be fixed in the 1.1.1 release, hopefully soon.

---

<div class="post-metadata">

**Author:** ![spmcewen](https://forum.intervals.icu/user_avatar/forum.intervals.icu/spmcewen/32/63805_2.png) [@spmcewen](https://forum.intervals.icu/u/spmcewen)\
**Post date:** [4 March 2025 12:18 UTC](https://forum.intervals.icu/t/a-new-intervals-companion-app-with-widgets/92334/9 "2025-03-04T12:18:49Z")

</div>

I’m not actually sure if the Strava credentials will work with the authentication endpoint the app needs to use for access to the data api. Looking at the intervals.icu login window I show as part of the login flow, I think it needs to be an intervals.icu account.

Note that if you use the Strava connection to import your activities, that won’t work with any intervals.icu 3rd part app that uses the data API. That’s due to Strava’s API policy change. I’ve got a few emails about this so far. You will need to use the direct app connections from Intervals to services like Garmin, Wahoo, Zwift, etc. To sync activities recorded with an Apple device you’ll need to use the HealthFit or RunGap app to sync to intervals.

---

<div class="post-metadata">

**Author:** ![Filippo](https://forum.intervals.icu/user_avatar/forum.intervals.icu/filippo/32/30791_2.png) [@Filippo](https://forum.intervals.icu/u/Filippo)\
**Post date:** [4 March 2025 13:31 UTC](https://forum.intervals.icu/t/a-new-intervals-companion-app-with-widgets/92334/10 "2025-03-04T13:31:02Z")

</div>

> [@spmcewen](#):
>
> For the widget colors, that’s partially determined by macOS. If you go to the Settings → Desktop & Dock you should see these options:

thanks! that worked! 👍

---

<div class="post-metadata">

**Author:** ![Rey](https://forum.intervals.icu/user_avatar/forum.intervals.icu/rey/32/45254_2.png) [@Rey](https://forum.intervals.icu/u/Rey)\
**Post date:** [4 March 2025 18:12 UTC](https://forum.intervals.icu/t/a-new-intervals-companion-app-with-widgets/92334/11 "2025-03-04T18:12:48Z")

</div>

I’m excited to try it out on iOS, but after logging into intervals and granting it all read/update permissions, it still tells me it needs permissions for calendar, activities, etc. I also tried reinstalling the app and revoking permissions on intervals to reset the login. Any ideas?

---

<div class="post-metadata">

**Author:** ![spmcewen](https://forum.intervals.icu/user_avatar/forum.intervals.icu/spmcewen/32/63805_2.png) [@spmcewen](https://forum.intervals.icu/u/spmcewen)\
**Post date:** [4 March 2025 21:38 UTC](https://forum.intervals.icu/t/a-new-intervals-companion-app-with-widgets/92334/13 "2025-03-04T21:38:37Z")

</div>

> [@Rey](#):
>
> I’m excited to try it out on iOS, but after logging into intervals and granting it all read/update permissions, it still tells me it needs permissions for calendar, activities, etc. I also tried reinstalling the app and revoking permissions on intervals to reset the login. Any ideas?

I think I know what’s going on. You actually don’t want to check the update permission boxes. Just leave the read boxes checked.

The app doesn’t require update permissions on your account. It only reads data. I have a check that confirms it has all the READ permissions it needs and I think it must be a bit too aggressive, as it’s aborting if you have the update permissions checked as well.

I can clean that up, but you can just leave the READ boxes checked and you should be able to get in.

---

<div class="post-metadata">

**Author:** ![Rey](https://forum.intervals.icu/user_avatar/forum.intervals.icu/rey/32/45254_2.png) [@Rey](https://forum.intervals.icu/u/Rey)\
**Post date:** [5 March 2025 05:17 UTC](https://forum.intervals.icu/t/a-new-intervals-companion-app-with-widgets/92334/14 "2025-03-05T05:17:15Z")

</div>

That was it! Thanks!

---

<div class="post-metadata">

**Author:** ![Mapocyclo31000](https://forum.intervals.icu/user_avatar/forum.intervals.icu/mapocyclo31000/32/43260_2.png) [@Mapocyclo31000](https://forum.intervals.icu/u/Mapocyclo31000)\
**Post date:** [5 March 2025 07:28 UTC](https://forum.intervals.icu/t/a-new-intervals-companion-app-with-widgets/92334/15 "2025-03-05T07:28:09Z")

</div>

Hi Spencer, do you plan to develop the same on Android ?

---

<div class="post-metadata">

**Author:** ![Daniele\_Costantini](https://forum.intervals.icu/user_avatar/forum.intervals.icu/daniele_costantini/32/68732_2.png) [@Daniele\_Costantini](https://forum.intervals.icu/u/Daniele_Costantini)\
**Post date:** [5 March 2025 09:07 UTC](https://forum.intervals.icu/t/a-new-intervals-companion-app-with-widgets/92334/16 "2025-03-05T09:07:28Z")

</div>

@spmcewen great app!  
btw i found a bug on apple watch, the last graph has the colored portion that overlap the setting button.

---

<div class="post-metadata">

**Author:** ![Fabriziover](https://forum.intervals.icu/user_avatar/forum.intervals.icu/fabriziover/32/31058_2.png) [@Fabriziover](https://forum.intervals.icu/u/Fabriziover)\
**Post date:** [5 March 2025 09:46 UTC](https://forum.intervals.icu/t/a-new-intervals-companion-app-with-widgets/92334/17 "2025-03-05T09:46:17Z")

</div>

Really Thank you for the great app. It was really needed!  
Congratulations.  
I installed it and it is really functional.  
I don’t understand only why it doesn’t intercept my Rowing (Virtual Rowing) workouts, everything else does.  
I checked and selected all the various activities that I record on Intervals.icu, but Rowing doesn’t seem to digest it. 🤔

---

<div class="post-metadata">

**Author:** ![spmcewen](https://forum.intervals.icu/user_avatar/forum.intervals.icu/spmcewen/32/63805_2.png) [@spmcewen](https://forum.intervals.icu/u/spmcewen)\
**Post date:** [5 March 2025 12:15 UTC](https://forum.intervals.icu/t/a-new-intervals-companion-app-with-widgets/92334/18 "2025-03-05T12:15:33Z")

</div>

> [@Mapocyclo31000](#):
>
> Hi Spencer, do you plan to develop the same on Android ?

Sorry, this is Apple only. I know there are other intervals front end apps that work both on iOS and Android. AFAIK those are built with non-native frameworks that are great at allowing you to build one app that runs on everything, but they limit the ability to take advantage of native framework features like widgets, watchOS apps, etc. My app was built with Apple’s native tools. All the graphs are built with Apple’s SwiftUI Charts library.

---

<div class="post-metadata">

**Author:** ![spmcewen](https://forum.intervals.icu/user_avatar/forum.intervals.icu/spmcewen/32/63805_2.png) [@spmcewen](https://forum.intervals.icu/u/spmcewen)\
**Post date:** [5 March 2025 12:18 UTC](https://forum.intervals.icu/t/a-new-intervals-companion-app-with-widgets/92334/19 "2025-03-05T12:18:16Z")

</div>

> [@Daniele\_Costantini](#):
>
> btw i found a bug on apple watch, the last graph has the colored portion that overlap the setting button.

If you could send me the model watch you’re using and a screenshot that would be great: [intervalscompanion@icloud.com](mailto:intervalscompanion@icloud.com)

Getting the layout working well on all the various sized watches was one of the tricky parts. I mostly tested on my Ultra, both physical device and in the virtual Xcode simulator, but I also ran everything, at least virtually, on SE and Apple Watch 10 sized models. I may have missed something though!

---

<div class="post-metadata">

**Author:** ![spmcewen](https://forum.intervals.icu/user_avatar/forum.intervals.icu/spmcewen/32/63805_2.png) [@spmcewen](https://forum.intervals.icu/u/spmcewen)\
**Post date:** [5 March 2025 12:25 UTC](https://forum.intervals.icu/t/a-new-intervals-companion-app-with-widgets/92334/20 "2025-03-05T12:25:06Z")

</div>

> [@Fabriziover](#):
>
> Really Thank you for the great app. It was really needed!  
> Congratulations.  
> I installed it and it is really functional.  
> I don’t understand only why it doesn’t intercept my Rowing (Virtual Rowing) workouts, everything else does.  
> I checked and selected all the various activities that I record on Intervals.icu, but Rowing doesn’t seem to digest it. 🤔

I’d like to figure this one out. If you’re syncing activities with Strava to Intervals that could be the issue, as it’s not possible to get the data for those activities from the intervals API.

Or it’s a bug specific to virtual rowing. I haven’t been able to test with every possible activity type, there are lots of them! I suspect it may be Strava (yet again) though, as I just added a fake virtual rowing workout to my calendar and I see it in my app. I should change the icon to something better though.

[EDIT] - on second look it appears I may have _missed_ adding VirtualRowing, which is why it shows up with the generic icon. Let me dig in..

[EDIT #2] - Looking better! These fixes will be in the 1.1.1 release, including fixes to the sporty summary widget for “All Water Sports” which is fixed and now includes the “Rowing” and “VirtualRow” activity types.

 ![Screenshot 2025-03-05 at 7.47.35 AM](https://forum.intervals.icu/uploads/default/original/3X/9/8/98d331e2abb2babaeb64dba4ecf44184f336f83a.png)

 ![Screenshot 2025-03-05 at 7.54.44 AM](https://forum.intervals.icu/uploads/default/original/3X/e/3/e3f89d8c5c263d483db9ae9c2d839233710ace1d.jpeg)

 ![IMG_4704.PNG](https://forum.intervals.icu/uploads/default/original/3X/a/3/a36e078e962a9381b269ed6b153924c773a50983.jpeg)

---

<div class="post-metadata">

**Author:** ![Fabriziover](https://forum.intervals.icu/user_avatar/forum.intervals.icu/fabriziover/32/31058_2.png) [@Fabriziover](https://forum.intervals.icu/u/Fabriziover)\
**Post date:** [5 March 2025 12:47 UTC](https://forum.intervals.icu/t/a-new-intervals-companion-app-with-widgets/92334/21 "2025-03-05T12:47:12Z")

</div>

ErgData with which I record the Virtual Rowing training session, is then connected to strava, and this then to Intervals. I hope it’s not the problem because ErgData app that saves the training on the LogBook (the native app of Concepr2) synchronizes only on Strava and Training Peaks.

So to have the rowing training data on Intervals, I have to use Strava as an intermediary.

I attach a couple of screens to show what happens

Today:

 ![IMG_5122](https://forum.intervals.icu/uploads/default/original/3X/a/6/a6d5d966773f3b712a00b6a0178054c370939838.jpeg)  
 ![IMG_5121](https://forum.intervals.icu/uploads/default/original/3X/c/7/c71a74ff2848791d21ee70518144c35f7d3541ef.jpeg)

[Next page](https://forum.intervals.icu/t/a-new-intervals-companion-app-with-widgets/92334.md?page=2)
