MCPcopy Create free account
hub / github.com/Kennygunderman/state-of-health-tracker

github.com/Kennygunderman/state-of-health-tracker @v2.0.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release v2.0.0 ↗ · + Follow
903 symbols 3,405 edges 481 files 18 documented · 2% updated 11d ago★ 47714 open issues

Browse by type

Functions 721 Types & classes 182
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

State of Health_LOGO

State of Health

Lift. Eat. Run. One app keeps score.

Download on the App Store · thestateofhealth.com

React Native Expo TypeScript TanStack Query Zustand


Your training and your diet are the same goal, so why are they in separate apps? State of Health puts your workouts, macros, and runs in one place, with none of the bloat that makes most fitness apps a chore to open.

AI food logging Workout templates GPS run tracking
Macro tracking Weight progress Weekly training goals

What it does

Workouts. Build templates, start a session, and log sets as you lift. Progressive overload tracking watches every exercise and tells you when it's time to add weight or reps. Set a weekly target and watch the week fill up.

Macros. Type "3 eggs, toast with jelly, hash browns" and the AI breaks it into foods with calories and macros you can tweak. Prefer doing it by hand? Search the USDA database, which covers nearly every labeled food in the US, or build your own custom foods.

Runs. GPS tracking with your route on the map, pace, speed, and calorie burn. Runs feed into the same daily activity picture as your lifts and steps.

Progress. Body weight trends against your goal, strength charts for every exercise, and a full history of everything you've logged. Every day you train or eat, the app keeps the diary for you.

Under the hood

  • React Native 0.86 on the New Architecture, Expo SDK 57
  • TypeScript end to end
  • TanStack Query for server state, Zustand for client state
  • Node + Postgres backend with Prisma
  • Firebase for auth (email, Google Sign-In) and Remote Config

Development

npm install
npx expo run:ios

Shipping a release

  1. Bump version and buildNumber in app.json
  2. Build and submit:
eas build --platform ios --profile production --auto-submit

Or build and submit separately with eas build --platform ios --profile production and eas submit -p ios --latest.


Built by Kenny Gunderman

Extension points exported contracts — how you extend this code

browse all types & interfaces →

Core symbols most depended-on inside this repo

browse all functions →

Shape

Function 673
Interface 158
Method 48
Class 16
Enum 8

Languages

TypeScript100%

Modules by API surface

src/screens/FoodDetail/index.util.ts16 symbols
src/service/run/RunSessionService.ts15 symbols
src/screens/Workouts/index.tsx14 symbols
src/utility/DateUtility.ts13 symbols
src/service/run/runPointBuffer.ts12 symbols
src/service/auth/AuthService.ts12 symbols
src/screens/Progress/components/BodyTab/index.util.ts12 symbols
src/screens/MacrosHistory/index.util.ts12 symbols
src/screens/CreateTemplate/index.tsx11 symbols
src/utility/RunUtility.ts10 symbols
src/screens/Progress/index.util.ts10 symbols
src/components/MiniLineChart/index.util.ts10 symbols

For agents

$ claude mcp add state-of-health-tracker \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page