BuildMobile migration

Xamarin → React Native migration: 9 months, zero docs

12+ months of dormant Xamarin code. No onboarding material. No CI. We rebuilt from scratch in React Native, added CircleCI, Crashlytics, and Expo from nothing, and hit the beta date.

9 months · on-time beta · team self-sufficient at handoff

The situation

A team had a Xamarin codebase that had been dormant for 12+ months. No starting documentation. No CI pipeline. No crash reporting. The app needed to ship on both iOS and Android, the stack needed to be modern, and the internal team needed to be able to maintain it afterward.

What we did

We scoped the migration as a ground-up React Native rebuild, not a port. The Xamarin code served as a specification, but we rewrote architecture, data layer, and UI from scratch. 9-month engagement, flat-fee milestones, scope frozen at proposal.

We added CircleCI for builds and release signing from commit zero. Crashlytics for production monitoring. Expo for the development workflow, with a managed workflow for the internal team. All three were missing from the original stack.

We wrote onboarding docs while we built, not after. When the internal team took over at handoff, they could pull the repo, run a fresh build, and ship a release the same day.

The outcomes

Beta shipped on time. The internal team was self-sufficient at handoff, not dependent on us for the next release. The stack has survived the 18 months since.

This engagement is why /build at CAM Software stresses flat-fee milestones and frozen scope. Long-running programs only work when the money model doesn't incentivize scope creep.

Want an honest read on yours?

Book a 30-minute intro call. If a Technical Audit fits, we'll scope it on the call. If it doesn't, we'll say so.

Book a 30-minute intro call