react-native logo

react-native

react native

SKILL.md

Full skill instructions

React Native

The skill is based on React Native, generated at 2026-01-31.

React 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.

Core References

TopicDescriptionReference
Core ComponentsView, Text, Image, TextInput, ScrollView - fundamental UI building blockscore-components
Layout with FlexboxFlexbox layout system for positioning and aligning componentscore-layout
StylingStyleSheet API for creating and organizing component stylescore-styling

Features

Animations

TopicDescriptionReference
Animated APICreate fluid animations with Animated.Value, timing, spring, and gesture integrationfeatures-animations
Easing FunctionsEasing functions for custom animation curves and natural motionfeatures-easing

User Interactions

TopicDescriptionReference
Touch HandlingPressable, Touchable components, and gesture responders for handling user inputfeatures-touch-handling
KeyboardKeyboard API for handling keyboard events, dismissing keyboard, and KeyboardAvoidingViewfeatures-keyboard

UI Components

TopicDescriptionReference
Additional ComponentsModal, Switch, ActivityIndicator, RefreshControl for dialogs, toggles, loading statescomponents-ui

Data Display

TopicDescriptionReference
ListsFlatList and SectionList for efficiently rendering large, scrollable listsfeatures-lists

Styling and Theming

TopicDescriptionReference
Colors and ThemingColors, PlatformColor, Appearance API for theming and dark mode supportfeatures-colors-theming

Platform Integration

TopicDescriptionReference
Platform APIsLinking, Dimensions, Platform detection, AppState, and native integrationsfeatures-platform-apis
NetworkFetch API for making HTTP requests and handling network responsesfeatures-network
StatusBarControl status bar appearance, style, and visibilityfeatures-statusbar
Share & VibrationNative share dialog and device vibration for haptic feedbackfeatures-share-vibration
TimerssetTimeout, setInterval, requestAnimationFrame for scheduling and delaysfeatures-timers
Platform-Specific APIsAndroid (PermissionsAndroid, ToastAndroid, DrawerLayoutAndroid) and iOS (ActionSheetIOS)features-platform-specific

Accessibility

TopicDescriptionReference
AccessibilityScreen reader support, accessibility labels, roles, and statesfeatures-accessibility

Advanced Styling

TopicDescriptionReference
Transforms2D and 3D transforms for rotation, scale, translation, and skewfeatures-transforms

Best Practices

TopicDescriptionReference
PerformancePerformance optimization techniques, profiling, and common bottlenecksbest-practices-performance
DebuggingDebugging tools, Dev Menu, LogBox, React Native DevTools, and debugging techniquesbest-practices-debugging

Key Recommendations

  • Use StyleSheet.create() for all styles instead of inline objects
  • Use FlatList instead of ScrollView for long lists
  • Enable useNativeDriver for animations when possible (transform, opacity)
  • Use Pressable for new touch interactions (preferred over Touchable components)
  • Handle platform differences with Platform.select() and Platform.OS
  • Test on real devices - simulator behavior may differ from actual devices
  • Optimize list performance with getItemLayout for fixed-height items
  • Use TypeScript for better type safety and developer experience