74 React Native interview questions with answers
74 React Native interview questions with detailed answers, sorted from basic to advanced. Free to practice, with progress saved automatically.
All React Native interview questions
How does React Native differ from ReactJS?
How is JSX in React Native different from web JSX?
Why must every piece of text in RN sit inside `<Text>`?
What was the old RN Bridge? Why has it been replaced with JSI from 2024+?
What is Hermes and how is it different from JSC?
How does the RN component lifecycle compare with React on the web?
Are props vs state any different in RN compared with React on the web?
How does RN actually render on iOS vs Android?
`StyleSheet.create` vs inline style — what differs and when to use each?
Why does RN use density-independent pixels instead of `px`?
`Platform.OS` / `Platform.select` — when to use them, when to split into `.ios.tsx` / `.android.tsx` files?
Fundamental differences — RN vs Flutter vs native (Swift/Kotlin) for new 2026 projects?
Differences between `View`, `Text`, `Image`, `ScrollView` — when to use each?
`FlatList` vs `SectionList` vs `ScrollView` — when to use each?
How important is `keyExtractor` in FlatList?
Built-in `SafeAreaView` vs `react-native-safe-area-context` — why do teams replace the built-in?
`KeyboardAvoidingView` — should you pick `padding` or `height` for `behavior`?
Controlled vs uncontrolled `TextInput` — which pattern wins in RN?
Image caching in RN — when should you reach for `expo-image` / `FastImage`?
`Pressable` vs `TouchableOpacity` / `TouchableHighlight` — what does RN recommend in 2026?
Built-in `Modal` vs portal-style custom modal — which one to pick?
How does Flexbox in RN differ from CSS on the web?
react-navigation v7 — when to use Stack vs Tab vs Drawer?
Native stack (`@react-navigation/native-stack`) vs JS stack — performance differences?
How do you configure deep linking in RN?
`useNavigation` / `useRoute` — how to type them with TypeScript?
Passing params between screens — pitfalls?
What is the split-stacks authentication pattern?
AsyncStorage vs MMKV vs SecureStore — which one to pick?
Redux Toolkit vs Zustand vs Jotai in RN 2026 — which one?
TanStack Query in RN — how to configure the persister?
Context API in RN — what is the concrete re-render pitfall?
Why is react-hook-form usually picked for forms in RN?
Networking in RN — fetch vs axios, retry, offline detection?
How does FlatList stay smooth with 10k items? How to tune `windowSize`/`maxToRenderPerBatch`/`getItemLayout`?
`useCallback` / `useMemo` in RN — when do you really need them?
Hermes engine — how to enable it and how to measure the improvement?
`removeClippedSubviews` — how to measure the trade-off?
`InteractionManager.runAfterInteractions` — what is the use case?
Image-related perf bugs — how to handle thumbnails, blur placeholder, and prefetch?
`react-native-screens` `enableScreens(true)` — what does it do?
Profiling RN — when to use RN DevTools, Systrace, or Xcode Instruments?
What is the New Architecture, what does it include, and from which RN version is it default?
What is JSI, and how is its native call mechanism different from the old Bridge?
Fabric — how does the new renderer work, and what differs from the old UIManager?
TurboModules vs old NativeModules — concrete differences?
Why is Codegen required in the New Architecture?
What is Bridgeless mode?
Migrating an old library to the New Architecture — what is the checklist?
Hermes + New Architecture — why is this the default combo in 2026?
When should you write a native module instead of using an existing package?
Writing an Android (Kotlin) native module — hello world step-by-step?
Writing an iOS (Swift) native module — hello world step-by-step?
TurboModule spec file (`.ts`) → Codegen flow in detail?
Expo Modules API — how does it differ from TurboModule and when to pick it?
Animated API vs Reanimated — which one should you use?
`useSharedValue` / `useAnimatedStyle` — how do they run on the UI thread?
`react-native-gesture-handler` — why does it replace `PanResponder`?
When is `LayoutAnimation` enough?
RN-Skia — what are the use cases (canvas, charts, blur, glassmorphism)?
Expo managed vs bare workflow vs vanilla CLI — what to pick in 2026?
Metro bundler — how is it different from Webpack?
EAS Build vs local build — trade-offs?
OTA updates — Expo Updates / EAS Update / CodePush — which to pick in 2026?
App size optimization — ProGuard/R8, Hermes, ABI splits, asset compression?
Jest + React Native Testing Library — how to write a component unit test?
Detox vs Maestro — which to pick for E2E?
React Native DevTools (RN 0.76+) — how does it replace Flipper?
Snapshot testing in RN — when does it help and when does it hurt?
Permissions in RN — `react-native-permissions` cross-platform pattern?
Accessibility in RN — `accessibilityLabel`, `accessibilityRole`, screen readers?
i18n in RN — `react-i18next` / `i18n-js`, RTL support?
Push notifications — FCM + APNs, Expo Notifications, how to set up?
Security in RN — Keychain/Keystore, certificate pinning, encrypted storage?