Back to projects

Fitness Assessment App

Konnen

An app a personal trainer uses to run fitness assessments and hand each client a branded PDF report on WhatsApp: Cooper test, VO₂ max two ways, BMI, heart-rate zones and progress charts.

Next.jsReactTypeScriptTailwind CSSSQLitejsPDFRechartsVercel Blob

Some details omitted under NDA

Konnen

The problem it solved

The trainer ran fitness assessments on paper and in a spreadsheet, then explained the result out loud. The client left with nothing in their hands, could not see their own progress and had nothing to show anyone else.

VO₂ max, training zones and BMI were recalculated at every assessment, with room for mistakes, and the classification meant looking it up on a printed table.

What the app does

Client record

A profile with a photo, compressed in the browser before it uploads so a weak connection does not stall.

Five training zones

Zones worked out from maximum heart rate using the Tanaka formula.

Full Cooper test

Resting heart rate, heart rate at 3, 6 and 12 minutes, perceived effort and distance, all recorded.

VO₂ max two ways

From the Cooper distance and from resting heart rate, then classified Weak, Regular, Good or Excellent against the Cooper Institute table by age band and sex.

BMI with classification

Body mass index with the World Health Organization classification.

Progress on a chart

Every test the client has taken, compared over time.

A report in the trainer's brand

A PDF carrying the professional's visual identity, including the VO₂ reference table.

Delivered on WhatsApp

The PDF is shared as a real file through the phone's native share sheet, with a WhatsApp link as the fallback.

Cardio plan

A plan assembled from a ready-made catalogue of sessions.

Password access

One password to get in, with a signed session cookie.

How it turned out

  • The client leaves the assessment holding a report with the trainer's brand on the cover.
  • Progress is visible on a chart instead of depending on the trainer's memory.
  • The calculations and the classification come out the same every time, because they are formulas in code rather than a reading off a printed table.
  • What goes out on WhatsApp is a real PDF file, not a screenshot.

In numbers

5

training zones calculated

2

ways of estimating VO₂ max

4

measures in the report

For technical visitors

The rest of this page is written for whoever decides the purchase. This block is for whoever has to maintain the app.

  • 2,569 lines in the internal library, 10 pages and an 824-line PDF generator.
  • VO₂ max from the Cooper distance, (d - 504.9) / 44.73, and from resting heart rate (Uth). Max heart rate by Tanaka, 208 - 0.7 x age.
  • Classification against the Cooper Institute table by age band and sex, held in code and printed in the report.
  • Photo compressed in the browser before upload, encrypted and versioned cloud storage.
  • Single-password access with a signed session cookie.

Ready to build your project?

Let's turn your idea into a tailored digital solution.

Get in touch