App Development
React Native developers
for South African founders.
We design, build, and ship iOS and Android apps for operators who need more than a landing page. Expo and React Native by default, native when it has to be. Shipped to the stores, not stuck in staging.
The problem
Most South African app projects never see the App Store.
We lose count of the founders who come to us mid-project, six months deep, R400,000 in, with a half-working build that crashes on any Android below version 12. Somewhere a junior dev promised them it would take eight weeks on a student rate. Two teams later, nobody owns the repo, the backend is on a Linode instance with nobody’s SSH key, and the founder is trying to explain to investors why the screenshots in the pitch deck are still Figma mockups.
App development looks simple because every demo app is simple. The reality is that the App Store review, push notifications on iOS, deep linking, in-app purchases with RevenueCat, crash reporting, over-the-air updates, and backend scaling all need to be right before you hand the thing to real users. Each one is a small thing. Together they kill projects.
Our job is to get you past all of that, with a codebase your next developer can actually read.
What we do
What we actually build.
EcomSolve builds mobile apps for South African businesses. We are React Native developers first — Expo SDK and EAS Build for 90% of projects — with native Swift and Kotlin in the kit when a project needs it. We have shipped apps for retail, logistics, fintech, health, and consumer services. Every app we have launched is live on both stores today.
Projects we take on: consumer apps (marketplaces, content, loyalty), B2B operator apps (dispatch, inventory, field ops), companion apps for existing web platforms, and MVPs for pre-seed founders who need a real thing to put in front of users and investors. We do not do ten-minute hackathon builds and we do not do "app wrappers" around your website — that is what PWAs are for, and we will build you one of those instead if it is the right call.
Beyond the app itself we handle the full delivery chain: design in Figma, state management (Zustand or React Query, usually), offline-first patterns for South African network realities, push notifications, deep linking, analytics with Amplitude or PostHog, subscriptions with RevenueCat, CI/CD via EAS workflows, and crash reporting with Sentry. We set up your Apple Developer and Google Play accounts, submit the listings, and stay on through the first two app updates.
- — Consumer iOS and Android apps in React Native / Expo
- — B2B operator and internal tool apps (logistics, field services, retail)
- — MVPs with backend, auth, payments, and store submission in 12 weeks
- — Migration from Flutter, Ionic, or hybrid wrappers to React Native
- — Native Swift and Kotlin modules when React Native cannot cover it
- — Backend in Cloudflare Workers, Supabase, or Node.js on AWS
- — Ongoing support retainers for apps already in production
Our process
How the work happens.
We split app projects into milestones, not hours. Each milestone has a demo, a TestFlight build you can share, and a clear sign-off before we move on.
Scope & architecture
Workshops to pull apart user flows, data models, and integrations. We deliver a technical architecture doc (screens, states, APIs, third-party services, platform-specific edge cases) that doubles as your investor technical deck. Fixed-price scope agreement before any code is written.
Design sprint
High-fidelity Figma designs for all core screens on iOS and Android, including empty states, loading states, error states, and offline states. We prototype gesture-heavy interactions in Figma or directly in Expo so we can feel them before we commit.
Build milestone by milestone
Two-week milestones, each ending in a TestFlight and Google Play Internal Testing build. You get to show real, interactive builds to users and stakeholders every two weeks. Backend, auth, payments, and push notifications are wired in parallel so nothing is left to the end.
Submit, launch, support
We handle App Store and Play Store submission, respond to any review rejections, and stay on-call for 30 days post-launch. After that we offer support retainers (bug fixes, store reviews, OS upgrade compatibility, feature work) typically from R18,000 per month.
Deliverables
What you get.
- Figma design system for iOS and Android
- Production React Native app in your GitHub organisation
- Backend API, database, and infrastructure-as-code
- App Store Connect and Play Console listings with assets
- Crash reporting, analytics, and notification setup
- Over-the-air update pipeline via EAS Update
- Technical handover document and engineering Looms
Tech stack
The stack.
- React Native
- Expo SDK
- EAS Build
- TypeScript
- React Query
- Zustand
- Reanimated
- Skia
- Swift
- Kotlin
- Cloudflare Workers
- Supabase
- RevenueCat
- Sentry
- OneSignal
Proof
Apps that shipped. And stayed shipped.
A Pretoria-based logistics operator came to us after a failed Flutter project. Their drivers needed an offline-first dispatch app that could hold jobs for a full shift on a patchy Vodacom signal in the northern Limpopo route. We rebuilt in React Native with an offline job queue backed by WatermelonDB, push notifications via Expo, and a backend on Cloudflare Workers syncing to their existing SAP install. Delivery exception rate dropped 38% in three months, and the drivers stopped phoning dispatch for job details.
A Cape Town retail brand wanted a loyalty app to move their best customers off a crowded Shopify store. We built a React Native app with Apple Pay and Google Pay, RevenueCat-backed membership tiers, and a barcode-scan rewards flow for their retail stores. Launched in 11 weeks. At six months, 14% of DTC revenue was transacting through the app with a 2.4x higher lifetime value per user than the web channel.
FAQ
Questions before you commit.
Should I build with React Native, Flutter, or go fully native?
For 90% of South African app projects, React Native is the right choice. One codebase ships to iOS and Android, hot-update via EAS is free, and the ecosystem is enormous. Flutter is great for heavy animation-led UI. Full native (Swift + Kotlin) is only worth the double cost when you need deep platform APIs — ARKit, advanced camera processing, Apple Watch companions, complex audio processing. We will tell you honestly which fits.
How long does an MVP app take to build?
A real-world MVP — auth, a handful of core screens, backend, payments if needed, and App Store / Play Store submission — runs 10 to 16 weeks. Anything under 8 weeks is almost always an oversimplified scope that will bite you during review. We include the review cycle in our timelines (Apple can take 3 to 10 days, Google Play usually 1 to 2 days) because pretending it is not real causes bad surprises.
What does app development in South Africa cost?
A production MVP from EcomSolve typically costs R280,000 to R850,000 ex VAT, depending on scope and backend complexity. Simple content-and-auth apps sit near the lower end. Two-sided marketplaces, payment flows, real-time features, and custom native modules push higher. We fix-price by milestone, not hourly, so you know the ceiling before you commit.
Can you handle App Store and Play Store submissions and rejections?
Yes, including the politics. We manage your Apple Developer Program account (R1,700 per year), set up App Store Connect, handle TestFlight distribution, write the listing copy and screenshots, and respond to rejections. South African founders often get caught by Apple’s Sign-in-with-Apple requirement, guideline 4.2 (minimum functionality), and anything touching financial services — we have navigated all of these.
Do you handle the backend or just the app?
Both, usually. Our default backend stack is Cloudflare Workers + D1 or Postgres on Hyperdrive, plus Supabase for auth where it fits. For heavier workloads we use Node.js on AWS or Hetzner. We integrate with Firebase, RevenueCat for subscriptions, OneSignal or Expo notifications, Sentry for error tracking, and payment gateways (Apple Pay, Google Pay, PayFast mobile checkout, Peach Payments tokenisation).
Got an app that needs to exist?
Send a Loom or a Figma link, or just a paragraph describing what you want to build. We reply within a working day with scope questions, a rough budget band, and a realistic timeline. If we think you do not need an app, we will tell you that too.