Skip to main content
Lane GarnerWeb and Mobile Developer

Rhythm Fit

A polished workout tracker with a plan-aware AI coach

At a glance

Role

Solo product design + full-stack engineering


Stack

  • React Native + Expo
  • TypeScript
  • Redux Toolkit
  • NativeWind
  • Supabase
  • OpenAI

Overview

Rhythm Fit is the workout app I wanted in the gym. It plans training blocks, logs sets quickly, and stays out of the way during a workout. The coach, schedule, and workout log live in one app.

I designed and built the React Native app, interaction system, and Node/Supabase backend. Real gym use shaped the UI: clear hierarchy, large targets, immediate feedback, and reliable one-handed actions.

Rhythm can follow the device appearance or stay in Light or Dark mode.

Rhythm Fit AI Coach dashboard showing this week's generated plan in light mode
The AI Coach keeps the weekly plan, progress, and training signals in one place.
Rhythm Fit weekly calendar populated with an AI-generated workout in light mode
Generated exercises and supersets land directly on the weekly calendar.
Rhythm Fit bench press execution screen with AI-programmed sets, reps, and weight in light mode
Each set, the workout timer, and plate calculator stay within reach.
Rhythm Fit AI Coach explaining how to progress a bench press workout in light mode
Plan-aware coaching uses the programmed weight and reps to answer progression questions.

AI that becomes product UI

Plan creation starts with a focused intake for goals, experience, equipment, schedule, and limitations. Those answers constrain the exercise selection, weekly split, session length, and plan dates. Users review everything before generation.

The model returns a scheduling tool call. Typed code validates it, expands recurring weeks, creates sets and supersets, then saves editable data through the same Redux model as manual workouts.

Rhythm Fit review screen for an AI-generated workout plan in light mode
Every planning input can be reviewed and edited before generation.

A coach grounded in real training

Before each request, the app condenses recent sets, reps, and weights, longer-term volume and consistency, lift progression, PRs, muscle balance, and stalled exercises into a coaching snapshot. The active plan and onboarding goals complete the context, so advice comes from the user's training instead of a generic fitness prompt.

A versioned, evidence-informed training layer covers progressive overload, goal-specific rep ranges, weekly volume, rest, warmups, recovery, and conservative safety boundaries. These are adaptable defaults shaped by experience and goals, not a rigid template.

The UI handles partial answers, errors, and retries without jumping the scroll position. Screen readers announce the final answer once.

User data stays isolated as untrusted input. Conversations are summarized, token budgets scale by task, and scheduling output is validated before reaching the calendar.

Rhythm Fit AI Coach giving plan-aware progression advice in light mode
Coach answers arrive without moving the scroll position, followed by one final screen-reader announcement.

Local-first where it matters

The AI coach needs a connection. A saved workout does not. Redux updates immediately, AsyncStorage persists the change, and account sync runs in the background with a retry queue.

Planning can show a network state. Checking off a set should never stall because reception is bad.

Rhythm Fit workout execution screen in light mode
Completed sets save locally first, then sync to the account in the background.

Progress becomes useful feedback

Completed workouts feed records, volume, consistency, muscle balance, and exercise history across several time ranges.

The coach uses the same data to celebrate a PR or suggest a change when a lift stalls. Logging, analysis, and planning stay connected.

Rhythm Fit workout analytics with records, volume, and consistency in light mode
Workout records become PRs, volume trends, muscle balance, and top exercises.

Accessibility is interaction design

Accessibility had acceptance criteria from the start: WCAG 2.2 AA targets and contrast, labels, roles, focus order, visible state, and reduced motion. I tested every flow in both themes.

Large controls and clear states also help in a busy gym. Rhythm can follow the system appearance or stay in Light or Dark mode. Its patterns follow Apple's Human Interface Guidelines.

Rhythm Fit coach dashboard with large labeled controls in light mode
Large targets, clear state, AA contrast, and reduced motion support one-handed use.

Also in the box

  • Supersets with back-to-back guided execution
  • Count-up, countdown, and EMOM workout timers
  • Plate math and lift calculators
  • Guided onboarding for goals, schedule, and equipment
Rhythm Fit plate calculator showing a 185-pound barbell setup in light mode
Configured barbells and available plates produce a per-side loading plan.
Rhythm Fit superset execution screen for lateral raises and tricep pushdowns in light mode
Superset pairs stay together through weight, reps, and set completion.
Rhythm Fit workout timer with count-up, countdown, and EMOM modes in light mode
Count-up, countdown, and EMOM timers remain inside the active workout.
Rhythm Fit guided onboarding asking about training goals in light mode
Guided answers about goals, schedule, and equipment become planning context.

← All projects