Native iOS Apps Are Just Better
Most workout apps are built with cross-platform frameworks. Plates isn't. Here's why we made that choice.
You're between sets of heavy deadlifts. Heart rate's up. You need to log your reps and get back to the bar. The last thing you want is an app that stutters, lags, or takes an extra second to respond.
We built Plates as a native iOS app. Not React Native. Not Flutter. Not a web app pretending to be a real app. Native Swift, built specifically for iPhone.
What You Get with Native
Speed
Native apps talk directly to your iPhone's hardware. No middleman. When you tap something, it happens.
Smaller Download
Cross-platform apps ship code for multiple operating systems, even if you only use one. Native apps don't carry that baggage.
Gestures That Work
Swipe back. Pull down to refresh. Long press for more options. In native apps, they just work.
Battery
Native code runs more efficiently. Your phone lasts longer.
Smooth Animations
iPhones can display 60-120 frames per second. Native apps actually hit those numbers.
System Features
Spotlight search, widgets, Shortcuts app, HealthKit—native apps can use all of it.
The Cross-Platform Trade-offs
The Translation Tax
React Native, Flutter, and friends add a layer between your app and the phone. That layer costs performance.
Design Compromises
An app that runs on both iOS and Android can't fully commit to either. The result usually feels like it belongs on neither.
Playing Catch-Up
When Apple ships new iOS features, native apps can adopt them immediately. Cross-platform frameworks need time to add support.
Missing Pieces
Some iOS capabilities are hard or impossible to access from cross-platform tools. Native apps don't have this problem.
Why We Built Native
Building cross-platform would've been faster. We could've shipped on Android too. But we didn't want to make an app that's "good enough" on both platforms. We wanted to make one that's great on iPhone.
When you're resting between sets, you want to tap a button and have it respond immediately. You want the app to feel like it belongs on your phone. That's what native gives you.
Questions
What counts as a native app?
An app built with Apple's tools—Swift or Objective-C—that runs directly on iOS without a translation layer. Plates is native. Apps built with React Native, Flutter, or similar frameworks aren't.
How can I tell if an app is native?
Native apps usually feel more responsive. Scrolling is smooth, animations don't stutter, and the interface uses standard iOS components. If something feels slightly off—a weird scroll behavior, an animation that doesn't quite land—it's probably cross-platform.
What about Android?
We're focused on iPhone for now. If we build for Android, it'll be a native Android app—not a port.