The Pack
What is in the Migration Pack?
Agent Skills that run each stage of a migration (assess, plan checkpoints, spec a screen, port it to SwiftUI and Compose, check parity, replace native modules, plan the cutover), two reviewer agents, the scripts those skills call, and a six-chapter playbook. The Pack page lists every item.
Which coding agents does it work with?
It installs as a Claude Code plugin. For Cursor, Codex and other agents that read the open Agent Skills specification, an install script copies or symlinks the skills into your project.
Does it do the migration for me?
Your coding agent does the work, one checkpoint at a time, and your engineers approve each checkpoint. The Pack decides the order, the gates and the checks. It does not replace someone who will own the Swift and Kotlin code afterwards.
How is this different from Android Studio's Migration Assistant?
Android Studio Rabbit 1 Canary includes a Migration Assistant that converts iOS, Flutter and React Native projects to a Kotlin and Jetpack Compose Android app from the New Project Wizard (developer.android.com/studio/preview/features, updated 9 September 2026). It is free, covers Android only, is in the Canary channel, and produces a new Android project for you to test. The Pack covers iOS and Android together, with the same design on both. It works checkpoint by checkpoint inside your live app, and each checkpoint is gated by tests, screenshot and event parity against the running React Native app, two reviewer agents and human approval. It also handles the parts a converter does not: carrying over stored data so users stay signed in (SecureStore, AsyncStorage, MMKV), push token continuity, analytics event parity, and the cutover. You can use both tools together.
Does it keep my app's design?
Yes, by default. The porting skills rebuild your existing design in SwiftUI and Jetpack Compose, and every checkpoint is compared with the React Native app you ship today. Following each platform's own conventions is an option you choose in the checkpoint plan.
How do updates work?
Every licence gets every future update of the Pack at no extra cost. A new skill or change lands only when it works end to end and its tests pass. The changelog lists each release.
Using it
Do I need Xcode and Android Studio?
To port screens and check parity, yes: Xcode with an iOS simulator, the Android SDK with an emulator and JDK 17, and Maestro to drive the apps. The screenshot comparator ships with the Pack and needs no other install. ImageMagick is optional, used only by the older pixel-diff script. The assessment and the checkpoint plan need only Node.js 20 or newer.
What if my app uses a module the Pack does not cover?
The assessment lists every native dependency, including the ones without a known mapping, and marks them as open questions instead of guessing. replace-expo-module covers common Expo and React Native modules; for anything else it gives your agent the structure to write a Swift and Kotlin service behind an interface and record the behaviour differences.
Brownfield or rewrite?
Brownfield means native screens inside your existing app, moved one by one. A rewrite rebuilds from the running app as reference. Brownfield keeps everything shippable but costs integration work; a rewrite is cleaner but has a longer gap before the first native release. The assessment recommends one with its reasons, and the playbook covers the trade-off.
Should a small team migrate?
Usually not. If you are one to five engineers and shared code is what lets you ship on both platforms at all, stay on React Native and add native code only where it hurts. The assessment says so when it applies.
Does the Pack send my code anywhere?
No. The Pack's scripts run on your machine and send no code, reports or telemetry anywhere. The analyzer reads your repository without executing its code. Your coding agent sends content to its own model provider under that provider's terms, and the Pack does not change that.
Buying and licences
Which licence do I need?
Individual covers one named developer on unlimited personal and client projects. Team covers up to 10 developers in one company, and Company covers unlimited developers in one company, on every app the company owns or builds for its clients. A developer is anyone who runs the Pack or reads or changes it. All three are one-time payments, and every one includes every future update of the Pack for as long as it exists. There is no renewal and no subscription. A seat is a developer with an email address at the licensed company, invited to the Pack repository by their own account.
Can a consultancy or agency use the Pack for client work?
Yes, within your tier's developer limit. The code, reports and plans you produce belong to you and your client. You may not give the client a copy of the Pack; the client needs its own licence to run the Pack itself.
Can I buy it today?
Yes, by enquiry. That is deliberate: a short exchange confirms the tier fits your team before you pay. Email hello@nativestarter.io or use the form on each licence page, and you get an invoice back. Nothing is charged until you agree the licence and the amount.
What happens after I pay?
You are invited to a private GitHub repository, one invitation per seat. There is no download and no licence key: repository access is the licence in practice. Updates arrive by pulling, forever, with nothing to renew. The Pack installs as a Claude Code plugin, and an install script adds it to Cursor, Codex and other readers of the Agent Skills specification.
What is a seat, and what if a developer leaves?
A seat is one developer with an email address at the licensed company, invited to the repository by their own account. Seats are counted, not reserved: when someone leaves, remove their access and invite their replacement. Exceeding the count breaches the licence; changing who holds a seat does not. Removing access ends their future updates, not a copy they already pulled.
What is the refund policy?
If the Pack is not useful to you, ask within 14 days of purchase for a full refund. After a refund, stop using the Pack and delete your copies.
Can I share the Pack or publish my changes to it?
You may change it for your own use within your tier. You may not share it outside your licensed developers, resell it, or publish it or a derivative as a skill pack, plugin, prompt library, template, course or training material. The licence page has the full terms.
Support
Can the founder help with our migration?
Yes, as optional support: a free 60-minute advisory call, a Readiness Report written for your app in five working days, or a pilot that migrates one real flow with your team. Book the call from the support page, or email hello@nativestarter.io for any of the three.
What does a Readiness Report include?
A written report on your app, usually 15 to 25 pages: native dependency inventory with SwiftUI and Compose equivalents, custom native code and patches, screens and navigation, releases and OTA, the hard parts, checkpoint order, brownfield or rewrite, an effort estimate with assumptions, and when to stay on React Native. Plus a 45-minute walkthrough call. The Bluesky sample follows the same structure.
What happens to our code during support work?
Access is used only for the work you asked for. It is removed when we deliver, and any copies we made are deleted within 14 days. We never publish anything about a customer's app without written permission.