Musclog

AI-powered fitness & nutrition tracking — free & open source.

Smart workout tracking
AI photo nutrition logging
Detailed progress charts
100% private & on-device
Try it live
AndroidiOSWeb
Download the AppGoogle Play Store QR CodeScan to download for Android
MusclogLift, Log, Repeat

From the workshop

Musclog Blog

Notes on building a private, open-source fitness app — from product decisions to the technology behind it.

Retro

Breaking my data out of a Game Boy cartridge

I logged a few weeks of food on a 1998 cartridge and then realised it was stuck in there for life. So the Game Boy now beams its save into my phone as a stream of fountain-coded QR codes — no cable, no network, no handshake.

Game BoyGBDKCQR CodesRetroHomebrewOptical Transfer
Read article
Web development

This blog was built using Expo

The page you are reading is a statically exported Expo Router route. Here is how generateStaticParams turns a folder of Markdown into HTML — and the three-hunk patch to expo-router I needed to make catch-all routes work at all.

ExpoExpo RouterStatic SiteReact NativeTypeScript
Read article
Retro

Creating a calorie tracker for the Game Boy Color

I put Musclog on a 1998 cartridge — 517 foods in ROM, macro goals packed into 23 bytes of battery-backed SRAM, charts drawn with background tiles, and 291 free bytes in the one bank that cannot be paged out.

Game BoyGBDKCRetroHomebrewNutritionWasmBoy
Read article
Machine learning

I trained my own model to get rep insights

A €20 sensor, a RandomForest, and Claude writing the ML code because I have no idea what spectral entropy means.

MusclogReact NativeExpoMachine LearningPythonBLEBluetoothFitness3D PrintingTinkercadWitMotion
Read article
Product updates

Musclog version 2 is out!

Musclog started in 2024 as an app I built for myself. Version 2 is a full rewrite — new UI layer, one database instead of two, and a much clearer answer to the question of where your data lives.

ReleaseReact NativeRewritePrivacyTypeScript
Read article