Szalty
MyFitnessPal and Strava had a baby.
- Role
- Product Designer & Developer
- Timeline
- ~1 month
- Team
- Me (Product Designer & Developer)
- João Hooks (Creative Director)
- Shane Barrone (Stakeholder)
- Skills
- Product Design
- iOS Development (SwiftUI)
- Motion & Interaction Design
- Design Systems
Shipped the redesigned flow; the client wants to adopt the v2 design system across the app.
Key pain points
“Most of the current design is straight from Lovable.”
I rebuilt it as a design system in code, then captured it back into Figma. The code was the source of truth the Figma never was.
“The Figma file has no real structure, so the devs are blocked.”
I organised the components and prepared clean, developer-ready handoff screens on a tight timeline.
“Onboarding feels heavy and it's not obvious what to do.”
I redesigned the whole flow, from account creation through Strava integration and location permissions.
“The colours are all over the place, dozens of near-duplicates.”
I audited every colour actually shipping: 22 of them, four different blues, two greens a shade apart. Then cut it back to one categorised system.
The Problem
Most nutrition apps feel like admin. You log your food into a grid, you get a number, you close the app. Nothing about them makes you want to come back. I wanted the opposite. Something that looks good, feels alive when you touch it, and treats food and training as things worth sharing.
Overview
Szalty is a social nutrition and fitness app for iPhone. You post a meal with its macros attached, link the workout behind it, and scroll a feed of what other people are eating and training. It started as a web prototype, and this is the native SwiftUI build where I could get the motion and the small interactions feeling right.
Personal Goals
- 01
Make logging feel good
Every tap has some weight to it. Buttons bounce, the heart bursts when you double tap, sheets slide the way you expect.
- 02
Port the web prototype properly
Rebuild the whole thing in SwiftUI instead of wrapping the web app, so it feels native everywhere.
- 03
Sweat the details
A real light and dark theme, custom fonts, shared element transitions, a glass tab bar. The stuff you only notice when it is missing.
01 / 04
A quick tour
Feed, explore, analytics, profile. The whole app in one pass, with the transitions and the glass tab bar doing their thing.
02 / 04
Posting a meal
Pick your foods and the macros add themselves up. Attach a workout, rate how it felt, post it. The whole flow is a stack of custom sheets.
03 / 04
The feed
Double tap to like and the heart bursts. Tap through to a post, drop a comment, keep scrolling. All the little interactions you expect from a social app.
04 / 04
Light and dark
A proper theme system underneath, so every colour, shadow and surface is defined for both.
The icons
Under the hood
- SwiftUI
- Rebuilt from the web prototype. iOS 26, iPhone, native navigation, no web views.
- Tab bar
- I planned a fully custom bar, then dropped the plan: the native glass bar was better. Create is a decoy tab that opens the sheet instead of switching.
- Stacked sheets
- Create, food picker and rating are custom overlay sheets so they can layer on top of each other, which native sheets fight you on.
- Motion
- Framer's springs mapped one to one at first, but native wanted less spring and more snap. The app settled on three speeds, with haptics doing the work the web springs used to.
- Theme system
- Light and dark colours resolved through an EnvironmentKey and remembered with AppStorage.
- Type
- KMR Melange Grotesk and Milligram, registered at launch.
Conclusion
Szalty is the version of a nutrition app I would actually use. Building it native let me chase the feel, the little bounces and bursts and slides that make it worth opening. Next up: real data behind the mock, and hooking the workout side into Strava and Apple Health.