Huashu Design
alchaincyf · Skill
Turns a one-line request in your AI agent into a finished design: a launch animation, a clickable app prototype, an editable slide deck, an infographic or a se…
An n8n workflow that reads a Strava activity when it is updated, asks a Google Gemini chat model to answer as a triathlon coach, and emails the notes. It covers swims, rides and runs, and plans the next sessions.
Triathlon coaching email after a Strava activity update is an n8n workflow in the Productivity category, listed by Mindket. It is free. This is version 1, last updated on . Download it on this page or copy its JSON, then import it into an n8n canvas. Nothing runs until you activate it in n8n.
Strava webhook
It starts when Strava tells the workflow that an activity was updated, which happens when one of these changes:
A coaching email for each updated Strava activity, with feedback and a plan for the next sessions
What you need before you start.
Activity source
Sends the workflow an event when an activity is updated, and returns the activity’s data.
NeedsA Strava API application, with its client ID and secret in a Strava OAuth2 credential
Language model
Writes the coaching notes from the activity’s text, answering as a triathlon coach.
NeedsA Google Gemini API key
Mail sender
Sends the notes as an HTML email.
NeedsAn SMTP account, a sender address and a receiving address
Checked by Mindket on 13 Nov 2026
This n8n workflow turns an updated Strava activity into a coaching email. It flattens the activity’s data into text, and a Google Gemini chat model answers as a triathlon coach. The prompt covers pool and open water swims, rides, runs, brick workouts and recovery. The answer becomes an HTML email with feedback and a plan for the next sessions. Eight nodes run it, beside two spare nodes and five sticky notes.
Triathletes, runners, cyclists and swimmers who log their sessions on Strava and want a second look at each one. Skip it for other people’s accounts, because Strava’s agreement limits who may see an athlete’s data. Skip it too if you want advice tied to your goals with no edit, since the prompt names none.
| Sport | Who uses it | How they use it | Example |
|---|---|---|---|
| Triathlon | Age-group athletes | Get notes on each swim, ride and run once Strava has it | An athlete edits the title of a long ride and gets notes on pacing and cadence by email. |
| Running | Marathon runners | Read their pace and heart rate trends in plain words | A runner adds a half marathon date to the prompt and reads the plan for the coming week. |
| Cycling | Club riders | Ask for sessions that fit the ride just done | A rider reads a note on the climbs of a hilly ride, with a session to match. |
| Swimming | Masters swimmers | Get drills for what the pool data shows | A swimmer reads a drill suggestion after a pool session. |
You need some n8n and a Strava API application: import a file, add three credentials and publish the workflow so Strava can reach its webhook.
Any n8n that Strava can reach over the internet, with an SMTP account and a Gemini key, will run it. The coaching notes land in your inbox.
Download saves a zip with workflow.json and Mindket’s setup notes in your downloads folder. Setup takes three credentials and two email addresses.
| Need | Detail |
|---|---|
| n8n | On n8n Cloud or on a server of your own, with a public address |
| Strava | An API application, with its client ID and secret |
| Google Gemini | An API key |
| An SMTP account, a sender address and a receiving address |
workflow.json.Strava Trigger.Google Gemini Chat Model.Send Email. Replace <YOUR_EMAIL_ADDRESS> with the address that receives the notes and <YOUR_SENDER_ADDRESS> with the address you send from.Edit an activity in Strava and wait a few moments. The notes arrive by email with the subject New Activity on Strava. To coach each new upload instead, set the trigger’s event to Create.
| To change | Where |
|---|---|
| The coach’s advice | The prompt in Fitness Coach |
| The model | Google Gemini Chat Model |
| Which activities start a run | The event and the object in Strava Trigger |
| The subject and the sender | Send Email |
A triathlete edits the title of a long Saturday ride in Strava. The trigger fires, and n8n fetches the activity with its distance, time and speed, plus heart rate and cadence when her device recorded them.
Gemini writes notes on pacing, cadence and the climbs, and suggests two sessions for the week. The email arrives with headings and bullet lists. She adds her race date to the prompt so the plan counts toward it. The advice is general, so she checks it before she changes her training.
If you are new. n8n draws a workflow as boxes joined by lines, and each box, a node, does one job. Strava calls a web address that n8n gives it, and n8n then fetches the activity itself. Start by editing the title of one activity.
For experts. The model sits on an AI Agent node with no tools, and its answer goes through two Code nodes into HTML before the email node.
| Node | What it does | What to know |
|---|---|---|
Strava Trigger | Receives activity events and fetches the activity | The event is update, the object is activity and resolveData is on |
Combine Everything | Flattens every field into name: value lines | Nested fields are included, so the whole record reaches the prompt |
Fitness Coach | An AI Agent with a long fixed prompt | It has no tools and no memory, so each run stands alone |
Structure Output | Splits the answer on blank lines | It handles bold headings, * bullets and numbered lists only |
The trigger fires on updates, not on new uploads, and Strava gives each application one subscription.
update. On its webhook page, read on 12 November 2026, Strava sends an update when an activity’s title, type or privacy changes, and a create event for a new activity. Set the event to Create to coach every uploadDelete If Exist removes the old onemodels/gemini-2.0-flash-exp. Google’s deprecations page, read on 12 November 2026, says the gemini-2.0-flash family shut down on 1 June 2026 and names gemini-3.6-flash as the replacement. Mindket’s copy uses models/gemini-3.6-flashGmail and WhatsApp Business Cloud are not connected to anything. Connect one after Conver to HTML and fill in what it asks if you want that route* bullets and numbered lists become HTML. Tables and # headings arrive as plain textAn n8n workflow that listens to Strava. When an activity is updated, it flattens the activity's data into text, asks a
Google Gemini chat model to answer as a triathlon coach, turns the answer into HTML and emails it to you.
workflow.json: the workflow as n8n exports it, fifteen nodes: eight that run, two spare ones that are notREADME.md: these notes.Google Gemini Chat Model named models/gemini-2.0-flash-exp. Google's deprecations page, read on 12 November 2026,gemini-2.0-flash family shut down on 1 June 2026 and names gemini-3.6-flash as its replacement. The modelmodels/gemini-3.6-flash. The 2.0 experimental name is not on that page, so it may have been retiredSend Email and Gmail are now <YOUR_EMAIL_ADDRESS> and <YOUR_SENDER_ADDRESS>.https://www.strava.com/settings/api. n8n's Strava credential asksworkflow.json.Strava Trigger. Theactivity:read_all and activity:write.Google Gemini Chat Model.Send Email. Replace <YOUR_EMAIL_ADDRESS> with the address that receives<YOUR_SENDER_ADDRESS> with the address you send from. Keep the angle brackets out.Strava allows one webhook subscription for each application. If the application already has one, the trigger stops
with that message. Its option Delete If Exist removes the old subscription, and that is a destructive step.
Strava Trigger fires on an activity update. With its resolveData setting on, which is the node's default, it alsoobject_data, so the data holds the full record.Code adds a field named myNewField set to 1 to each item. It came with the file and changes nothing that matters.Combine Everything flattens the data into lines of text, one name: value line each.Fitness Coach is an AI Agent. Its prompt describes a triathlon coach with notes for pool and open water swims, ridesGoogle Gemini Chat Model is the model itStructure Output splits the answer into headings, paragraphs and lists. Conver to HTML joins them into one HTMLSend Email sends that HTML with the subject New Activity on Strava.Gmail and WhatsApp Business Cloud sit in the file with no connection to anything. The note beside them says the
answer could go by WhatsApp, email or a blog. To use one, connect it after Conver to HTML, and fill in what it asks.
Fitness Coach. It names no goals and no athlete profile, so add yours there.Google Gemini Chat Model.Event and Object in Strava Trigger. Set the event to Create to coach each newSend Email.update. Strava, on its webhook page read on 12 November 2026, sends an update when anStrava Trigger.Structure Output turns bold headings, * bullets and numbered lists into HTML. Other# headings, arrives as plain text.gemini-2.5-pro and gemini-2.5-flash for shutdown on 1 December 2026, so the model name will needNOTICE.md 680 B README.md 6 KB workflow.json 16 KB
alchaincyf · Skill
Turns a one-line request in your AI agent into a finished design: a launch animation, a clickable app prototype, an editable slide deck, an infographic or a se…
op7418 · Skill
Skill that makes single-file HTML slide decks, slide illustrations and platform covers in two visual styles, with a presenter mode for rehearsal. For speakers…
alirezarezvani · Skill
Adds 411 ready-made skills for Claude Code and other coding agents, grouped by role from engineering and product to marketing, finance and compliance. Installs…
zarazhangrui · Skill
Builds HTML presentations from scratch or from a PowerPoint file and shows visual style previews to pick from, for people who want web slides with no CSS or Ja…
iptv-org · Kit
Collects publicly available live TV channels from many countries into playlists that any video player with live streaming can open. Made for viewers and for de…
uwg · Kit
Holds a set of image upscaling models gathered from the OpenModelDB community, for people who want to enlarge low-resolution pictures with AI on their own comp…