Automated nutrition planning based on your training load

Hi everyone :waving_hand:,

I’m Johan, a Full Stack Developer and triathlete from France.

I recently injured myself cross-country skiing (oops :sweat_smile:) and found myself with some unexpected free time this weekend. So, I decided to tackle a problem I’ve struggled with for a while: adapting my nutrition to my actual training load.

I noticed I often ate the same amount of food during heavy training blocks and recovery weeks, leading to unwanted weight gain during downtime.

:rocket: The Project: NutriMealAi I built https://www.nutrimeal.app/

The concept is simple:

  1. Sync: Connect your Intervals.icu account.
  2. Analyze: The app retrieves your planned workouts for the week.
  3. Plan: It generates a daily meal plan (Breakfast, Lunch, Dinner, Snacks) tailored to your energy expenditure and your goal (weight loss, maintenance, etc.).

:hammer_and_wrench: Powered by the Intervals.icu API A huge shoutout to David and this community for the documentation and the powerful API. It made retrieving the workout data seamless and allowed me to focus on the logic behind the nutrition planning.

:test_tube: Feedback wanted It is currently an MVP (and I’m still recovering from my ski injury, so I have time to code!). I would love to get your feedback, bug reports, or feature requests.

You can try it here: https://www.nutrimeal.app/

Thanks! Johan

12 Likes

Hi Johan, I’m very interested in this! I joined intervals.icu last week, having just started a trial of Hexis (similar idea to your app - nutrition recommendations based on training load) as Intervals was the only training platform for that which was accessible to me.

To cut a long story short, I love Intervals and hated Hexis (the food logging functionality and database are awful) so I’m now looking for an alternative.

Have had a look at your website, it’s obviously very much still in development. Is the app itself working and available for trial?

Thanks

2 Likes

Hi! Thanks for the interest.

To answer your question: Yes, the app is fully functional! It is currently in the MVP stage (so I am improving it daily based on feedback), but the core features are ready to use.

There is a Free Forever plan that allows you to start right away. However, since you are looking to test it thoroughly, feel free to send me a DM here! I’ll be happy to share a coupon code with you so you can try the Pro features for free.

Looking forward to hearing what you think!

1 Like

It looks very interesting, the onboarding is easy, the aesthetic is very good, simple, everything is very intuitive and fast. Very good work! Thanks for sharing it, we will test it :slight_smile:

1 Like

Thanks a lot! I really focused on keeping it simple and intuitive, so I’m glad to hear that.

Enjoy testing it, and don’t hesitate if you have any feedback later!

1 Like

Hello from Belgium :wink:
I’m also interested in codding and all AI related stuff.
Trick is I use Styd and RSS to estimate weekly load, I’ve not been able to make my whole plan into Intervals planned workouts… However, I have used GPT to estimate my weekly kJ intake needed week on week, based on projected spends.
I’ve estimated my Metabolic Needs also using some prompts with AI for the base daily consumption without workouts.
I am totaly open to do some testing and share feedback.
PS: just before reading your message I was just trying to get Gemini to help me with some python script to read a FIT file and the Stryd Garmin IQ fields.

Thanks so much, I will DM you now!

1 Like

Hello :belgium: !!

Regarding your setup: NutriMealAi specifically relies on the “Planned Workouts” (future events) from the Intervals.icu API to calculate the caloric needs for the upcoming week. So, if your calendar is empty in the future, the app won’t know how much to feed you! :sweat_smile: You might need to add some basic placeholders with estimated load in your calendar for it to work properly.

Since you are already doing this manually with GPT, my app basically automates that process (fetching the load → prompting the LLM → generating the JSON plan).

I’d love to have your feedback, especially on the logic since you’ve already dug into the metabolic math!

Good luck with your Python/FIT script! :crossed_fingers:

1 Like

Half way through onboarding, right after I linked my intervals account the language changed to french :laughing: not sure what it’s asking me now

Now that I’ve finished setup and changed language. The app thinks I’m only going to burn 450 calories if I ride 3.5 hours at 150 watts. If I followed this nutrition advice I’d very quickly dig myself a recovery hole..

Ouch, you are absolutely right. That is a massive error.
I just checked the data and I see 458 cal generated, while your workout correctly lists 1915 kJ.

There is clearly a bug in how I parse or convert that specific field from the API. I am fixing this right now.

Thanks again for this crucial feedback!

1 Like

Hi, this sounds like a great idea.

I’m quite attached to Cronometer for my nutrition tracking - is there any chance you can hook intervals icu and Cronometer and provide advice based on the two data feeds?

Cheers
Jim

2 Likes

The website and onboarding process go really smooth. (although I got stuck :wink:

Not sure this is the best place to provide feedback, but here we go… :slight_smile:

  • The magic link is in French (I’m Belgian, accept-language in my browser headers is: “en-BE,en;q=0.9,nl-BE;q=0.8,nl-NL;q=0.7,nl;q=0.6,en-GB;q=0.5,en-US;q=0.4”
  • Amazing how searching for food works. I entered “champignons” because I had forgotten the english word, but the process correctly showed “mushrooms”
  • (A Garmin issue, not a NutriMealAI issues, but maybe intresting to know): When external apps (I use Trenara) sync workouts to Garmin, Garmin seems to sync them to Intervals as Notes (not as workouts). So I thought I had planned workouts this week, and my watch behaves like that, but Intervals and your tool, do not recognize them
  • I get “An error occurred during generation” in Step 4
1 Like

Hi, sorry but at this time is not planned

Thanks, for you feedback, i will fix it as soon as possible.

1 Like

Dear Johann, I also set up your App and took a look at it. Did you have been able to fix the bug?
For me it doesn’t seem to calculate it correctly. It reads the kj correct but doesn’t transfer to kcal. I’d be starving to death by it’s suggestion :sweat_smile:.