Native iOS development
When it has to be native.
Most products are best built once in Flutter for both platforms. Some are not: apps that live on the camera, process data on the device, or lean on Apple's own frameworks. For those I build native iOS apps in Swift, and I take over existing Swift codebases. I built Shadewell, an on-device foundation-matching app, and owned iOS releases on Dingi Life, a maps app downloaded more than a million times.
Proof
Native iOS work you can check
- Shadewell: my own iOS app, foundation matching on the device
- Swift
- Shadewell: shades across supported brands
- 2,858 / 31
- Shadewell: on the App Store since August 2026
- v1.4
- Dingi Life: maps and navigation for Bangladesh, downloads at peak
- 1M+
- Dingi Life: iOS releases, OS migrations, SDK updates
- Swift
When native
When native iOS is the right call
- The camera is the product: scanning, measuring or reading something live, as Shadewell reads skin tone with the front camera.
- Data must stay on the phone: on-device processing, with nothing sent to a server.
- Deep Apple integration: widgets, HealthKit, Apple Pay, background tasks or the latest iOS features on day one.
- An existing Swift app that needs an owner: releases, OS migrations and SDK updates, as I handled on Dingi Life.
- Performance or polish that a cross-platform layer would compromise.
Shadewell
Shadewell: built, shipped and run by me
Shadewell helps people find a foundation shade with less guesswork. Start from a shade you already wear and it finds the closest matches in other brands, or take a private tone reading with the front camera. It covers 2,858 shades across 31 brands, works without a camera permission when translating a known shade, and keeps the reading on the device.
I designed, built and shipped it in Swift, and I run it: it went live on the App Store in August 2026 and is on its fourth feature release. It is the kind of app where native pays off, because the camera and the on-device work are the product.
Choosing
Native, Flutter or React Native
For most products I recommend Flutter: one codebase for iOS and Android, with the two apps always in step. I author pin_code_fields, a Flutter package downloaded about 400,000 times a month, and most of my mobile work is in Flutter.
Native Swift is the choice when the app depends on the camera, on-device work or Apple's own frameworks. React Native fits when your team already works in JavaScript; Action Dating was built in it. Discovery tells you plainly which one your product needs, and why.
Process
How an iOS project runs
- 01
Discovery
Before the estimateWe work out what the app has to do, whether it truly needs to be native, and what it needs from the backend and the device.
- 02
Estimate
Mostly fixed priceNew builds are mostly fixed price after discovery, estimated from the total effort with AI-accelerated work built in.
- 03
Build
TestFlight every couple of daysDaily updates, a demo every week and a fresh build every couple of days that you install on your own iPhone.
- 04
Launch and support
One month freeWe take it through App Store review, then support it free for a month, followed by a retainer that keeps it current with each iOS release.
Questions
Questions founders ask
Should my app be native iOS or cross-platform?
Cross-platform, usually Flutter, unless the app depends on the camera, on-device processing or deep Apple integration. Then native Swift is worth the extra work.
Can you take over an existing Swift app?
Yes. A paid two-day audit comes first; if we fix rather than rebuild, most of the fixes land in the first week.
Do you build native Android too?
Most of our Android work ships through Flutter, which compiles to a native Android app. If your product needs a separate native Android app, we say so in discovery.
Tell me what the app has to do.
A first call is free. You leave knowing whether it should be native, cross-platform, or a takeover of what you already have.