FROM THE EXCEED IT BLOG
Moving an Existing App to Shared Code: What to Assess Before a Rebuild
Published
Adapted from our archive; the original author credit is retained. About this attribution.

An existing app should not be rebuilt in a shared framework simply because a newer approach looks appealing. First establish what is difficult about the current product and which parts still work well. A migration needs to preserve customer access, business rules and operational continuity as well as replace code.
Identify the actual problem
Separate slow delivery, unstable behaviour, missing ownership and platform duplication. Each may have a different remedy. An unreliable backend will not automatically improve when the mobile interface is rewritten. Missing documentation may be addressed through an assessment and handover exercise.
Gather the source, build instructions, release history and known issues. Ask whether an authorised developer can reproduce a current build. Our existing-app assessment guide explains what to prepare before committing to a repair or replacement.
Inventory behaviour before replacing screens
Document core journeys and important exceptions using the working product and business records. Include behaviour that is not obvious from the design: saved drafts, customer preferences, permissions and integration retry rules.
Map native dependencies such as camera, notifications, background tasks and hardware libraries. Verify whether the proposed framework supports the required behaviour on each platform. Test uncertain integrations before estimating the full migration as routine screen work.
Choose the boundary of the change
A targeted repair, staged replacement or full rebuild may be appropriate. Compare the dependencies and operating risk of each option. If the backend can remain stable, a new mobile experience may be introduced against its existing contract, provided compatibility is verified.
Avoid combining unrelated major changes without a reason. Replacing the mobile framework, authentication provider and database simultaneously can make failures harder to isolate. Plan clear checkpoints where the business can review a working outcome.
Preserve users and data deliberately
Decide how existing accounts, local drafts and stored preferences will behave after an update. Review API compatibility while old app versions remain in use. A release cannot assume that every customer updates at the same moment.
Where records need migration, rehearse the process and validate results with business owners. Plan recovery if the new app encounters an unexpected data shape. See the legacy data migration guide for reconciliation and cutover decisions.
Measure whether the change solved the problem
Define the intended improvement before starting: fewer platform inconsistencies, reproducible releases or a resolved integration constraint. Use those measures to evaluate the result alongside functional acceptance testing.
Leave documented boundaries, setup instructions and a support plan for the next team. A migration is worthwhile when it improves a concrete operating or delivery problem at an acceptable cost. Our native-versus-cross-platform comparison can inform the technology decision once the existing product has been understood.