CatalogPersonal life ›Wellbeing

BMI Calculator — body mass index with history

Calculate your **BMI** (body mass index) from weight and height and keep a history of every measurement over time: enter the numbers once and the result shows up right in the table, no manual math required. As always with Reactive, everything stays on your own device.

▶ Use this app

bmibody mass indexweightheighthealthwellbeing

What it records

  • Weight in kg
  • Height in meters, e.g. 1.75 (not centimeters)

How it works

This is a Reactive app: a plain text document that your browser turns into a working app — forms, live data, tables, statistics and even charts, with nothing to install or configure.

  1. Use it right away. Hit “Use this app”: it opens right in your browser, ready to go, with data saved only on your device.
  2. Your data stays yours. Everything is stored locally on your device, kept separate for each app: no account, no server, nothing to set up.
  3. Make it your own. The text below is the entire app: copy it, tweak fields, views and words, and your changes become interactive instantly.
  4. Share it as a file. An app is a simple file: save it, export it or share it with a link; and with encrypted collaboration several people edit the same data in real time.
The app’s source
# ⚖️ BMI Calculator

Calculate your **BMI** (body mass index) from weight and height and keep a
history of every measurement over time: enter the numbers once and the
result shows up right in the table, no manual math required. As always with
Reactive, everything stays on your own device.

::::form{path="measurements" id="fbmi"}
::input{form="fbmi" field="date" type="date" legend="When"}
::input{form="fbmi" field="weight" type="number" placeholder="Weight in kg" required="true"}
::input{form="fbmi" field="height" type="number" placeholder="Height in meters, e.g. 1.75 (not centimeters)" required="true"}
::add-form{form="fbmi" path="measurements" label="Calculate BMI"}
::::

:::table{path="measurements" headers="Date,Weight (kg),Height (m),BMI" deletable="true" editform="fbmi"}
{date} | {weight} | {height} | {weight/height/height}
:::

**How to read your BMI:**

- Underweight: below 18.5
- Normal weight: 18.5 – 25
- Overweight: 25 – 30
- Obesity: above 30

Height must be entered **in meters** (e.g. "1.75"), not centimeters — the
most common mistake when calculating BMI by hand. The value in the table
updates automatically as soon as you edit a row's weight or height.