Mobile (Native)
Building real native iOS / Android apps from a JavaScript / TypeScript codebase.
The "true native" path — a real .ipa and .apk, not a wrapped web view. For "wrap my web app as iOS/Android" see Mobile Packaging and for "make my web app installable" see PWA.
React-based
- ★ Expo (with React Native) — the default for new RN apps in 2026. Managed workflow, EAS Build/Submit/Update, dev clients, Expo Router (file-based routing across iOS/Android/Web), Hermes by default. Free tier covers most indie projects.
- React Native (bare) — drop the Expo managed wrapper if you need deep native modules; pair with CocoaPods (iOS) and Gradle (Android). Many teams now use Expo's "prebuild" + dev clients to keep ergonomics while having full native control.
- Lynx (ByteDance) — newer JS-driven framework; uses a forked React-like dialect. Fast, native rendering. Worth watching, niche today.
Non-React
- Flutter — Dart-based; not JS, but the dominant cross-platform framework outside of RN. Worth knowing.
- NativeScript — TS/JS with Vue, Angular, or Solid bindings; smaller community than RN/Flutter.
- KaiOS / Trigger.io — niche.
Routing / Navigation
- ★ Expo Router — file-based routing on top of React Navigation; the path of least resistance.
- React Navigation — the underlying navigation library; standalone is fine.
- Nativewind — Tailwind for React Native; pairs well with
tamagui.
UI kits / styling
- ★ NativeWind — Tailwind for RN.
- ★ Tamagui — universal styled components for iOS / Android / Web; very fast.
- gluestack-ui — universal RN/Web component library.
- React Native Paper — Material Design components.
- NativeBase — older universal kit.
- Dripsy — responsive RN styling.
State / data
- Zustand, Jotai, TanStack Query, Legend State all work in RN unchanged.
- MMKV (
react-native-mmkv) — fast key-value storage, replaces AsyncStorage for most. - Watermelon DB — local-first, sync-able SQLite.
- op-sqlite, expo-sqlite — direct SQLite.
- Drizzle +
expo-sqlite— typed local DB.
Build / deploy
- ★ EAS (Expo Application Services) — build, submit, OTA updates. Free for hobbyists; paid for teams.
- Fastlane — open-source classic for iOS/Android automation.
- Codemagic, Bitrise — alternative CI for mobile.
Pick this if…
- Default new mobile app, want to ship fast: Expo + Expo Router + NativeWind/Tamagui + EAS.
- Need deep native module control: RN bare with Expo prebuild.
- Maximum perf, willing to leave JS: Flutter or true native (Swift/Kotlin).
- You're already a Vue dev: NativeScript with Vue bindings.