← Back to PostsBuilding

One codebase for iOS, Android and web

Sean Roberts•March 27, 2026•1 min read
One codebase for iOS, Android and web

A social platform needed native apps for iOS and Android alongside its web application. Users expected push notifications, location, maps, in-app purchases, camera access and calendar integration. Building separate native apps would have tripled the development and maintenance work.

What I built

A cross-platform application with Expo SDK 53 and React Native 0.79. One TypeScript codebase produces all three targets.

  • Remote push notifications on iOS and Android.
  • Location, maps and directions.
  • Image picking, audio, video and camera.
  • In-app purchases for subscriptions and one-time purchases.
  • Calendar integration and speech-to-text.
  • Offline and secure storage, and background tasks.
  • EAS Build profiles for development, preview and production, with automatic version increments for App Store and Play Store submission.
  • GitHub Actions workflows for stage, preview, production and scheduled tests.

In all the app carries more than 35 mobile-specific dependencies.

What came of it

One codebase ships to iOS, Android and the web. The business logic and API layer are shared with the web application, so nothing is written twice. The build profiles make the apps ready for both stores.

Share this post