The Plan

Noting the huge rise in smart scales to provide a more interactive healthy lifestyle experience for people of means, and also the unfortunate abandonment of 22 million copies of Wii Fit everywhere. We see an ability to make the most of those dusty balance boards to be repurposed into something much more meaningful.

Track It Too aims to do two things:

1) Provide a cheap equivalent to open market smart scale equivalents - rough technical equivalents costing ~£100 per unit compared to £6 for a Wii balance board. This opens up much more interactive, analytical ways to engage with your own healthy living - something we want to make much more accessible.

2) Help realise those health goals for people who don't have bags of time for extra exercise, or are constrained by a budget. Track It Too combines financial data to provide a set of 7 meals (every week) with an exciting set of healthy meals to match a calorie plan built around the weight data from the Balance Board! With full recipes being sent to you every day and a shopping list every week it's sure to cut down on the wasted time that many individuals fear they can't afford to lose.

The Tech

Data-driven engine to determine the ideal on-a-budget set of 7 meals for a given user (including predicting whether the base metabolic rate predictions are inaccurate, and adjusting accordingly) is built on a Google Cloud Platform MongoDB Atlas deployment with a front end built in flask, javascript, and jQuery hosted similarly entirely on the GCP.

Obviously the actual Balance Board is the only real spot of hardware required with the receiver (client which posts to our GCP hosted centralised server) being simple straight python capable of being run from something as slow as the original raspberry pi.

BMR estimation confidence grows with time, unlike usual fitness apps which don't mix food and exercise with actual results measurement.

# The Run-Of-The-Mill Pre-Error-Correction Base Metabolic Rate calc.
def getUserRecommendedCalories(userData):
    activityMultiplier = [1.2, 1.37, 1.55, 1.725, 1.9]
    if (userData.sex == "m"):
        bmr = 66 + (6.2 * userData.currentWeight) + (12.7 * userData.height) + (6.76 * userData.age)
    else:
        bmr = 655.1 + (4.35 * userData.currentWeight) + (4.7 * userData.height) + (4.7 * age)
    return bmr
Share this project:

Updates