Native Swift & React Native apps, built end to end
I design and build mobile apps: native in Swift and SwiftUI when an app needs deep platform integration, or cross-platform in React Native and Expo when shared code across iOS and Android is the priority. I also build the backend API behind them, from the first line to a store release, and stay on for the updates after.
Native Swift & watchOS
Swift and SwiftUI apps built for iPhone and Apple Watch, from a single-screen utility to a paired Watch-first companion app.
React Native & Expo
One codebase shipping to iOS and Android, with native modules dropped in when a feature needs to go deeper than Expo alone.
APIs that scale
Cloudflare Workers, REST APIs, and databases behind the app, with sync, auth, and real-time features handled server-side.
App Store & Play Store, handled
Store submission, privacy questionnaires, TestFlight, and ongoing updates after launch, all under a registered developer account.
And the platform behind it
A mobile app is only as good as its backend. I build the API layer on Cloudflare's edge platform, reaching for whichever of these primitives the feature actually needs, not a fixed stack:
Edge compute running the API itself, close to every user, with no servers to patch or scale.
Managed SQLite at the edge for relational data, with Drizzle ORM and versioned migrations.
Connects to an existing Postgres or MySQL database from Workers, pooled and cached for low latency.
Low-latency key-value storage for config, tokens, feature flags, and session lookups.
S3-compatible object storage for uploads and media, with no egress fees.
On-the-fly resizing, optimization, and delivery for user photos and avatars.
Video encoding, storage, and adaptive-bitrate delivery for in-app video.
Stateful coordination for real-time features: live scores, chat, presence, sessions.
Background and async processing decoupled from the request path, with retries and a dead-letter queue.
Transactional email (signup confirmations, password resets, receipts) sent straight from a Worker.
Caching, rate limiting, and observability in front of LLM calls.
Runs LLM, image, and speech inference on Cloudflare's GPUs, with no separate model host to manage.
A vector database for semantic search and RAG.
Invisible bot protection on public forms and sign-ups, no CAPTCHA puzzles.
Per-user or per-IP request throttling that protects endpoints from abuse.
Scheduled jobs for digests, cleanup, and billing runs.
...and more, whatever it takes for a successful launch.
My own product, shipped end to end
Have an app idea in mind?
Tell me what you’re building, and I’ll help you scope and ship it, from Swift to the App Store.
