← BackLee Lieser

Mobile App · iOS

Nimzo Fit

Role

UI/UX Design + Frontend Engineering

Platform

iOS

Stack

React Native Expo · TypeScript

Timeline

6 Months

My role: Sole designer and frontend engineer — responsible for all UX, UI, and React Native implementation. Collaborated with a backend engineer who owned the API architecture, database design, and server infrastructure.

Problem

The gym's most-used app is the Notes app.

Most gym-goers track workouts in their phone's notes app — hard to recall, impossible to track progress. There's no continuity, no data, no insight.

Trainers have it worse. They're stuck with overpriced, clunky software built by people who don't train — tools that feel like spreadsheets dressed up as apps.

Nimzo sits in the middle. Simple enough for the lifter. Powerful enough for the trainer. Core user: gym-goers first, trainers second.

Bad UI example — Notes app for gym tracking

Solution

One app. Two users. No compromise.

A mobile-first fitness platform built in React Native Expo — designed for speed, clarity, and the actual rhythm of a workout. Every screen was designed to be usable with one hand, between sets, with 60 seconds on the clock.

Home
Workout
Nutrition
Profile

Workout Builder

The hardest screen to get right.

Building a workout had to feel as fast as writing in Notes — but with structure. The challenge: how do you make a deeply nested data model (workout → exercise → set → reps/weight) feel effortless?

The answer was progressive disclosure. Surface only what the user needs at each step. Collapse completed sets. Make reordering feel physical.

This was the UX highlight of the entire app — and the design problem that took the most iteration to solve.

Exercise search
Set entry

Barcode Scanner

Food log
Food search

Nutrition tracking that doesn't feel like a chore.

Competing apps have janky scanning experiences — lag, misreads, cluttered results. Nimzo's scanner was built to feel instant and confident.

Point, scan, log. The result screen shows macro breakdown clearly, without the noise. Designed to be used in a gym bag, not at a desk.

Brand & Social

Bold voice. Built for everyone.

The brand takes cues from Nike and NoBull — direct, commanding, no fluff. But the vision isn't a niche product for elite athletes. It's a platform accessible to anyone who shows up to train, from first-timers to seasoned lifters.

The long-term push is community. Shared programs, trainer-to-athlete connections, and a feed that makes progress feel collective — not solo. Fitness is more consistent when it's social.

Instagram as primary acquisition channel with an 8-template content system: workout clips, progress callouts, educational posts, and product UI highlights — all cohesive, all fast to produce.

Nimzo brand identity
Post template 1
Post template 2
Post template 3
Post template 4

8-template Instagram content system

V2 Vision

The Figma Community model — for fitness.

V2 introduces a marketplace layer: trainers can publish and sell workout programs at scale. Gym-goers discover, follow, and purchase from creators they trust.

Think Figma Community applied to fitness programming. The trainer becomes a publisher. The gym-goer gets expert-designed programming without the personal training price tag.

This shifts Nimzo from a utility app to a platform — with network effects, creator incentives, and a recurring revenue model.

Creator marketplace concept
Wireframe 1
Wireframe 2
Wireframe 3

Friction Discovery

We shipped. Users told us what we missed.

Post-launch feedback surfaced friction in the core workout tracking flow — specifically, the check button UX for logging a completed set. Users weren't confident the action registered.

This is a real product design story, not a polished portfolio piece. The friction was identified, documented, and prioritized for the next sprint. The fix: stronger haptic feedback, a more deliberate animation, and a persistent set counter to reinforce state.

Shipping and learning > waiting for perfect.

Before

Ambiguous check button — users tapped, nothing felt confirmed. Doubt crept in mid-set.

After

Stronger haptic, deliberate animation, persistent set counter. State is always clear.

← All workNext project →