1---2name: react-native3description: React Native framework for building native mobile apps with React. Use when building iOS/Android apps, working with native components, handling touch interactions, animations, or platform APIs.4---5
6# React Native
7
8> The skill is based on React Native, generated at 2026-01-31.
9
10React Native lets you build mobile apps using only JavaScript. It uses the same design as React, letting you compose a rich mobile UI from declarative components. With React Native, you don't build a "mobile web app", an "HTML5 app", or a "hybrid app". You build a real mobile app that's indistinguishable from an app built using Objective-C or Java.
11
12## Core References
13
14| Topic | Description | Reference |
15|-------|-------------|-----------|
16| Core Components | View, Text, Image, TextInput, ScrollView - fundamental UI building blocks | [core-components](references/core-components.md) |
17| Layout with Flexbox | Flexbox layout system for positioning and aligning components | [core-layout](references/core-layout.md) |
18| Styling | StyleSheet API for creating and organizing component styles | [core-styling](references/core-styling.md) |
19
20## Features
21
22### Animations
23
24| Topic | Description | Reference |
25|-------|-------------|-----------|
26| Animated API | Create fluid animations with Animated.Value, timing, spring, and gesture integration | [features-animations](references/features-animations.md) |
27| Easing Functions | Easing functions for custom animation curves and natural motion | [features-easing](references/features-easing.md) |
28
29### User Interactions
30
31| Topic | Description | Reference |
32|-------|-------------|-----------|
33| Touch Handling | Pressable, Touchable components, and gesture responders for handling user input | [features-touch-handling](references/features-touch-handling.md) |
34| Keyboard | Keyboard API for handling keyboard events, dismissing keyboard, and KeyboardAvoidingView | [features-keyboard](references/features-keyboard.md) |
35
36### UI Components
37
38| Topic | Description | Reference |
39|-------|-------------|-----------|
40| Additional Components | Modal, Switch, ActivityIndicator, RefreshControl for dialogs, toggles, loading states | [components-ui](references/components-ui.md) |
41
42### Data Display
43
44| Topic | Description | Reference |
45|-------|-------------|-----------|
46| Lists | FlatList and SectionList for efficiently rendering large, scrollable lists | [features-lists](references/features-lists.md) |
47
48### Styling and Theming
49
50| Topic | Description | Reference |
51|-------|-------------|-----------|
52| Colors and Theming | Colors, PlatformColor, Appearance API for theming and dark mode support | [features-colors-theming](references/features-colors-theming.md) |
53
54### Platform Integration
55
56| Topic | Description | Reference |
57|-------|-------------|-----------|
58| Platform APIs | Linking, Dimensions, Platform detection, AppState, and native integrations | [features-platform-apis](references/features-platform-apis.md) |
59| Network | Fetch API for making HTTP requests and handling network responses | [features-network](references/features-network.md) |
60| StatusBar | Control status bar appearance, style, and visibility | [features-statusbar](references/features-statusbar.md) |
61| Share & Vibration | Native share dialog and device vibration for haptic feedback | [features-share-vibration](references/features-share-vibration.md) |
62| Timers | setTimeout, setInterval, requestAnimationFrame for scheduling and delays | [features-timers](references/features-timers.md) |
63| Platform-Specific APIs | Android (PermissionsAndroid, ToastAndroid, DrawerLayoutAndroid) and iOS (ActionSheetIOS) | [features-platform-specific](references/features-platform-specific.md) |
64
65### Accessibility
66
67| Topic | Description | Reference |
68|-------|-------------|-----------|
69| Accessibility | Screen reader support, accessibility labels, roles, and states | [features-accessibility](references/features-accessibility.md) |
70
71### Advanced Styling
72
73| Topic | Description | Reference |
74|-------|-------------|-----------|
75| Transforms | 2D and 3D transforms for rotation, scale, translation, and skew | [features-transforms](references/features-transforms.md) |
76
77### Best Practices
78
79| Topic | Description | Reference |
80|-------|-------------|-----------|
81| Performance | Performance optimization techniques, profiling, and common bottlenecks | [best-practices-performance](references/best-practices-performance.md) |
82| Debugging | Debugging tools, Dev Menu, LogBox, React Native DevTools, and debugging techniques | [best-practices-debugging](references/best-practices-debugging.md) |
83
84## Key Recommendations
85
86- **Use StyleSheet.create()** for all styles instead of inline objects
87- **Use FlatList** instead of ScrollView for long lists
88- **Enable useNativeDriver** for animations when possible (transform, opacity)
89- **Use Pressable** for new touch interactions (preferred over Touchable components)
90- **Handle platform differences** with Platform.select() and Platform.OS
91- **Test on real devices** - simulator behavior may differ from actual devices
92- **Optimize list performance** with getItemLayout for fixed-height items
93- **Use TypeScript** for better type safety and developer experience