A new Intervals Companion App. With widgets!

Oh great - and sorry, I should have read the thread a little more closely.

Tried to install on MacOS but I can’t login.
When I start the app, I get two windows. One is a new chrome window which asks me to login and me give permissions. When I login, I leave the permissions and default and click OK. I get a small popup to open the “intervals companion app” and click OPEN. Now the second window comes to the front which says “logging in…” and it stays at this forever.

When I close the first window (chrome), The second window immediately gives an error “Permission required, unable to login”.

Interesting. Logging in initially via macOS is untested functionality. If you login first from an iPad or iPhone that uses the same iCloud account, and iCloud keychain syncing is enabled, it should store your credentials securely in the keychain and start working in macOS.

I’m interested to know if changing your default browser temporarily to safari would help. I’m pretty sure the login needs to happen in an embedded browser window within the app for the login handshake to work.

Very nice companion app.
What I dont’t understand however (but I did not look into detail yet): my fitness numbers are completely different then those in intervals.icu itself…

If you go to the settings in the app what is the Form Display set as? I believe it defaults to ‘percent of fitness’, which may not match your setting on intervals.icu which I think defaults to the absolute number.

I thought about keeping the app setting in sync with the user setting, but I also like the easy ability to change it back and forth in the app.

It’s perfect like this, it confirmed my feeling of being tired → in the ‘risk’ zone :stuck_out_tongue:
While based on the absolute values; everything is ‘optimal’.
But as such it might be giving different interpretations.
In any case, load / TSS is limited anyway…

@spmcewen great work and thank you for creating this helpful app.

I have put the Fitness widget on my homescreen and configured to show 7d past and 7d in the future. Some feedback I want to give you:

  1. The line from
    today on (22nd of March) isn’t properly rendered as dashed line.

  2. Thee area for high risk background doesn’t start were the horizontal threshold line starts.

Changing my default browser temporarily to Safari allowed me to login.

1 Like

Good finds! The y-axis of the form graph looks off as the green is overlapping the legend labels of the graph above, which makes me think the upper bound is not being set properly. Are you up to date on the latest release?

As great as the SwiftUI Chart library is at creating universal graphs that work on any device, I’ve noticed some odd rendering things like this and I’m able to reproduce the other issues. The gradient colors for area fills is supported natively but I really had to twist its arm to make them be a sharp transition at the demarcation points instead of a gradual faded gradient. I manipulated my data so my 7 day view looks similar but my graph is bound correctly.

To make the graph work I look up the full range of data to be shown for the range selected + future days and render the line and fill. Then a dashed line for only the future days is rendered on top of the other line - this was the only way I could find to make the sharp gradients work properly, rather than rendering past and future as separate line marks.

To make the graph have smoother curves from point to point I use an interpolation option and it looks like it’s causing the dashed future line to not be rendered correctly as the line approaches the current day. See this screenshot where I disabled the interpolation option for the form graph.

The odd part is that it both your blue fitness line and my blue fitness line both look correct, and I think it has to do with how steep the curve is and how the interpolation is applied. Regardless, there isn’t much I can do about it, and hopefully apple fixes the chart engine in future updates. I believe they may have fixed some of the shaded fill issues that I noticed several months ago where the color spills outside the dark line that should contain it.

I could make the interpolation option a user selectable setting as well if people prefer sharp lines.

Thank you for the insights on rendering these
graphs. I updated to 1.1.5 and the issue remains.

I would be very interested in turning off the interpolation.

Also the option to go back 14d in the past would be appreciated.

Thank you for doing this.

I’m stuck on the intervals.icu login screen - can’t seem to enter Email or Password.

iPhone 15, iOS 18.2

Can you not enter values into the fields or are your credentials not valid? If you could send me a screenshot I can take a better look: intervalscompanion@icloud.com

I’m rethinking the preset range options. I considering moving the 7d, 30d, 60d, 3m, 6m, 1y options into a dropdown like the future range option. There isn’t enough room to add more options in that horizontal space, but as a dropdown 14d could be added easily. Then maybe add controls to select a custom from and to date range. :thinking:

I’ll have to think some more about all that.

restarted my phone which seems to have fixed the problem.

now I’m seeing a Fitness chart which is very different from the one I see on the intervals website.

That’s an easy one. Check your Form Display setting in the app and on the website. You can choose between absolute value: fitness - fatigue, and % of fitness: (fitness - fatigue) / fitness * 100. The app defaults to % of fitness but the website defaults to absolute value. I should probably default the app to absolute value to match the website as this has been asked a lot.

1 Like

Is the reason I’m not seeing any activities because I use strava? Will that change if I flip to Garmin?

Strava is just convenient because I have an Apple Watch and a Garmin bike computer so it’s nice to have everything in one place.

That’s correct, it’s due to Strava and their API policy change. You can’t really use Strava as a data hub anymore. I believe this is talked about further up in this thread.

It was discussed above - I just didn’t make the connection explicitly with regard to my situation.

so if I turn on Garmin and Strava is Intervals smart enough to cancel out all the duplicates?

Thank you everyone for the feedback. I’m preparing and testing version 1.2 with these changes:

  • During login, the intervals.icu form display user settings are looked up and synchronized with the app settings, so the form graph will match how it’s displayed on the website. You can still change it independently after login. Other logged-in clients, like Apple Watch and iPad, will still need to be updated manually.

  • Added new options to change the line style of all graphs: smooth, stepped, or sharp.

  • Added a new option to show the ramp rate on the fitness screen. Disabled by default, enable it in settings.

The 2nd most common question people ask (after Strava data issues) is why the form graph in the app doesn’t match the website. I now ask for permission to read your settings data while logging in and will look up the form setting and synchronize it to the app setting. Hopefully, this cuts down on the confusion!

@spmcewen you can add me to Test Flight if you want.