React Native
- Use `FlatList` with `keyExtractor` and `getItemLayout` for performant lists — never use `ScrollView` for dynamic data. Use React Navigation for routing. Minimize bridge calls — batch state updates and avoid passing large objects.
React Native
- Use `FlatList` with `keyExtractor` and `getItemLayout` for performant lists — never use `ScrollView` for dynamic data. Use React Navigation for routing. Minimize bridge calls — batch state updates and avoid passing large objects.
- Use `useMemo`/`useCallback` for expensive computations in render. Use `StyleSheet.create()` over inline styles for performance. Handle platform differences with `Platform.select()` or `.ios.tsx`/`.android.tsx` file extensions. Use `react-native-reanimated` for 60fps animations on the UI thread. Test with React Native Testing Library.