Site icon EnRoute

How I Used AI to Turn Two Years of Gym Data Into a Blog

Woman coding on laptop in gym near weightlifting bench

A woman codes on her laptop at a gym bench surrounded by weights and gym equipment

Person coding on a laptop

A few months ago I had a weird idea: what if I could take every single workout I’ve logged over the past two years and turn it into a series of blog posts — without writing them all by hand? I’d been tracking everything in the HEVY app religiously, and somewhere in that data was a real story about how my training had evolved. I just needed a way to pull it out. So I started experimenting, and what followed was one of those projects where you end up learning way more than you bargained for.

Here’s exactly how I went from a raw CSV export to eight published blog posts — using Gemini, Claude, and a bit of Python.


Step 1: Getting the Data Out of HEVY

If you’ve never used HEVY, it’s a workout logging app that’s genuinely great for tracking sets, reps, and weights over time. What I didn’t fully appreciate until this project was how good its data export is. Buried in the settings is a simple option to export your entire workout history as a CSV — every exercise, every set, every rep, timestamped and ready to go.

The export gave me a flat file with columns like:

Two years of training compressed into a few thousand rows. At first glance it was overwhelming — just a wall of numbers. But that’s where AI came in.


Step 2: Using Gemini to Identify Training Phases

I took that CSV and dropped it into Google Gemini with a pretty straightforward prompt: “Here’s my complete workout history. Can you identify distinct training phases — periods where my program, exercise selection, or structure meaningfully changed?”

What came back was genuinely impressive. Gemini analyzed the patterns in workout naming, exercise rotation, and frequency, and carved out eight distinct training phases across the two years:

Each phase had a clear start and end date, a description of the programming logic, and the exercises that defined it. This became the skeleton for eight separate blog posts.


Step 3: Python for the Numbers

Before handing anything off to Claude to write, I wanted the actual stats — real numbers for each phase that I could include in the posts. I wrote a short Python script to process the CSV and calculate per-phase aggregate data:

The volume numbers turned out to be one of the most satisfying parts of the whole project. Seeing that Phase 7 alone accounted for over 1.1 million lbs of total volume lifted across 40 workouts made the data feel real in a way that just reading workout names never did. Python made that kind of aggregation genuinely easy — a few pandas groupbys and some date filtering, and the numbers were ready to go.


Step 4: Claude Writes the Posts

With the phase structure from Gemini and the stats from Python, I handed everything over to Claude to actually write the blog posts. This is where the workflow got genuinely interesting — instead of writing prompts in the chat UI, I was using Claude Code (the CLI tool) to run multi-step agentic tasks directly against my WordPress site via the WordPress.com MCP integration.

Here’s roughly what Claude handled for each of the eight posts:

The fact that Claude could read the CSV files, run Python scripts, call the WordPress API, and update templates all in a single session — without me switching between tools — is what made this feel like a genuinely new way to work.


What the Finished Product Looks Like

The end result is eight posts, one per training phase, each with:

The whole thing took a few hours of actual work — most of it spent iterating on prompts and debugging the WordPress API calls rather than writing anything manually. That ratio felt right. The AI handled the repetitive work; I focused on the structure and decisions.


A Few Things I’d Do Differently

Honestly? Not a lot. But a few things stood out:

If you’re sitting on a dataset — workout logs, journal entries, financial records, reading history — and you’ve ever thought “there’s probably something interesting in here,” the tooling to pull it out and publish it properly has gotten genuinely good. This project is proof of that.

The eight workout posts are live in the workout category if you want to see what came out the other end.

Exit mobile version