Skip to content
PapelSoftware

Mobile apps

iOS and Android apps, built and kept current

We build mobile apps in React Native when one codebase makes sense, and in Swift or Kotlin when it doesn't. We handle App Store and Google Play releases, and keep the app working through every OS update.

Who it's for

Clients usually come to us for mobile apps in one of these situations.

  • Your customers are asking for an app

    You already have a web product and an API. You need iOS and Android apps that share accounts and data with it, without a second backend.

  • Field staff work on paper or with poor signal

    Technicians, drivers or inspectors need forms, photos and signatures that work offline and sync when they reconnect.

  • Your app is stuck

    It no longer builds, was rejected in store review, crashes on the latest OS, or the vendor that wrote it is gone.

What we build

We'll recommend cross-platform or native based on what the app needs to do, not on what we prefer to write. The choice is explained in writing before we start.

Companion apps for a web product
Mobile access to an existing platform, sharing the same API, accounts and design system as your web app.
Field and operations apps
Offline-first apps for crews and technicians: forms, photos, barcode scanning, signatures and background sync.
Consumer apps
Onboarding, in-app purchases and subscriptions, push notifications and analytics, with attention to app store review rules.
Native features
Camera, Bluetooth, HealthKit, location, widgets and Apple Pay or Google Pay, written natively where a bridge isn't enough.
App rescues
Taking over an app that no longer builds, crashes on new OS versions or was abandoned by a previous vendor.

How we approach it

Every request moves through the same steps, inside your weekly release cycle.

  1. 01

    Platform decision in writing

    We compare React Native and native for your feature list and recommend one, with the trade-offs spelled out.

  2. 02

    Test builds every week

    You get TestFlight and Google Play internal testing builds with each release, so you can try changes on real devices.

  3. 03

    Store submissions handled

    We prepare listings, screenshots and privacy disclosures, submit builds and respond to review feedback.

  4. 04

    Crash and performance tracking

    Crash reporting and performance metrics are set up from the first build, and regressions become requests.

Typical timeline

Engagement timeline

A typical schedule for a first release on both the App Store and Google Play.

About 14 weeks to both app stores

  1. Weeks 1 to 2

    Platform decision and spec

    React Native or native, recommended in writing, plus the feature list for the first release.

  2. Weeks 2 to 4

    Key screen design

    Onboarding, the main flows and settings, designed to each platform's conventions.

  3. Weeks 3 to 5

    Foundations

    Signed builds from CI, crash reporting, authentication and push notification setup.

  4. Weeks 5 to 11

    Feature build

    Features shipped in weekly TestFlight and Google Play internal testing builds.

  5. Weeks 10 to 13

    Beta testing

    TestFlight and Play closed testing with real users; stability and accessibility passes.

  6. Weeks 13 to 14

    Store submission

    Listings, screenshots and privacy disclosures prepared; builds submitted and review feedback handled.

Typical for a first release on a Growth plan. Apple and Google set their own review times, which can add days, so we plan launch dates with a buffer.

What you get every week

Releases happen on a fixed day each week. Monday starts with a queue check; Friday ends with these in your inbox and your shared channel.

  • A build on your phone

    TestFlight and Google Play internal testing builds with each release, so you try changes on real devices, not screenshots.

  • Release notes

    What changed, which OS versions were tested, and anything to try specifically in this build.

  • Stability summary

    New crashes and errors since the last build, with what we're doing about each one.

  • Demo recorded on devices

    A short video of the week's changes on both platforms, including offline and error states.

Quality standards

The targets we hold this work to, and how we check them. These are our commitments for how the work is done, not certifications.

Release management
Our targetSigned builds from CI, phased release on the App Store and staged rollout on Google Play, with a written checklist per version.
How we checkRollouts are paused automatically or manually if crash reports spike after release.
Crash reporting
Our targetCrash and error reporting from the first build, tagged with release and device details.
How we checkNew crashes reviewed weekly; regressions become priority requests.
Accessibility
Our targetDynamic Type and font scaling, VoiceOver and TalkBack labels, contrast and touch target sizes in line with WCAG 2.2 AA.
How we checkA manual screen reader pass on every new screen before it ships.
Store compliance
Our targetPrivacy nutrition labels and the Google Play Data safety form match what the app actually collects.
How we checkA pre-submission review against current App Store and Google Play guidelines.
Device coverage
Our targetSupported OS versions and device classes agreed in writing at the start.
How we checkA test matrix of real devices and simulators kept in the repository.
Offline behavior
Our targetDefined behavior for no connection and slow networks on every screen that loads data.
How we checkTested with network throttling and airplane mode before each release.

Typical deliverables

What you can expect to have in hand, in accounts and repositories you own.

  • Apps published under your own Apple and Google developer accounts
  • Source code and build pipeline in your repositories
  • TestFlight and Play internal testing builds weekly
  • Store listing copy, screenshots and privacy labels
  • Crash reporting and release health dashboards
  • Upgrade plan for each new iOS and Android version

Illustrative example, not a client case study

Example engagement

A field service company moves inspections off paper

Picture a company whose technicians complete inspection forms on paper, photograph them and email them to the office at the end of the day. Forms get lost, and handwriting causes rework.

  1. Weeks 1 to 2

    Choose the approach

    Interviews with technicians confirm that signal is unreliable on site. We recommend React Native with offline storage and explain the trade-offs in writing.

  2. Weeks 3 to 8

    Forms that work offline

    Inspection forms, photo capture, signatures and background sync ship in weekly TestFlight and internal testing builds to a few technicians.

  3. Weeks 9 to 12

    Closed testing with a crew

    One crew uses the app on real jobs. Sync conflicts and confusing fields they report are fixed in the following builds.

  4. Weeks 13 to 14

    Publish and roll out

    The app is submitted under the company's own developer accounts and rolled out in stages to the rest of the field team.

Where it ends up

Technicians complete inspections on their phones with or without signal, reports reach the office when they reconnect, and the company owns the apps, listings and developer accounts.

Technologies we use

A short, well-known list. We'd rather know a few tools deeply than list every framework we've touched.

Technologies used for mobile apps
AreaTools
Cross-platformReact Native, Expo, TypeScript
NativeSwift, SwiftUI, Kotlin, Jetpack Compose
ServicesRevenueCat, Firebase Cloud Messaging, Sentry
ReleaseFastlane, EAS Build, GitHub Actions

Which development plan fits

Mobile apps is delivered under a development subscription. These are the plans that suit this work best.

  • Starter

    $390 per month, best fit

    One mobile codebase and one request at a time. Suits a focused first release on one or both stores.

    Start with Starter
  • Growth

    $790 per month

    Web and mobile in parallel with a shared design system. The most common plan for mobile work.

    Start with Growth
  • Scale

    $1,490 per month

    Four parallel requests for apps with several platforms, native modules or a busy release schedule.

    Start with Scale

Common questions

If yours isn't here, ask us on a call or by email.

React Native or native?

React Native is usually the faster and cheaper path when the app is mostly screens, forms and API calls. Native makes sense for heavy device integration, complex animation or when you already have native code. We'll explain the recommendation for your app specifically.

Whose developer account is the app published under?

Yours. We're added as team members to your Apple Developer and Google Play Console accounts. The app and its listing stay with your company if you stop working with us.

What happens when Apple or Google release a new OS?

We test against the beta releases, fix what breaks, and ship an update before the public release where we can. This work is a normal request in your queue.

How long does app store review take?

Apple and Google set their own review times, and they vary. We submit early, plan launch dates with a buffer, and handle any rejection feedback as a priority.

Can you add in-app purchases or subscriptions?

Yes, using StoreKit and Google Play Billing, often through RevenueCat. We'll explain which purchases the stores require to go through their billing and how their fees apply.

Do you support tablets and older devices?

We agree on supported OS versions and device classes, including tablets, in writing before we start, and test against that list on every release.

Talk to an engineer about mobile apps.

A 30-minute call with an engineer, not a sales script. You'll leave with a scope, a plan recommendation and a start date.