React Native Syllabus
1. Introduction to React Native
What is React Native?
Differences between React Native & React.js
React Native vs Flutter vs Swift/Kotlin
Setting up the development environment (Expo vs React Native CLI)
Running React Native on Android & iOS
2. React Native Fundamentals
Understanding Components in React Native
Core Components (View, Text, Image, ScrollView, TextInput)
JSX & Styling in React Native
Flexbox for Layouts
Handling User Input
3. Navigation in React Native
Introduction to React Navigation
Stack Navigator
Tab Navigation
Drawer Navigation
Passing Data Between Screens
4. State Management in React Native
useState() and useEffect()
Context API for Global State
Redux Toolkit & Redux Persist
Zustand & Recoil for State Management
5. Handling API Calls & Data Fetching
Fetch API & Axios
Handling API Responses & Errors
Consuming REST APIs & GraphQL
Offline Data Management & Caching with AsyncStorage
6. Forms & User Input
Handling Forms in React Native
React Hook Form for Form Validation
Custom Input Components
Keyboard Avoidance & Handling Focus
7. Working with Native Features
Accessing Camera & Media (React Native Camera, ImagePicker)
Using Device Sensors (Accelerometer, Gyroscope)
Geolocation & Maps (Google Maps, Mapbox)
Push Notifications (Firebase FCM, OneSignal)
8. Performance Optimization
Avoiding Re-renders with React.memo()
useMemo() & useCallback()
FlatList & SectionList Optimization
Code Splitting & Lazy Loading
Background Tasks & Optimization
9. Authentication & Security
Firebase Authentication (Google, Facebook, Apple Sign-In)
JWT Authentication & OAuth
Secure Storage for Tokens (AsyncStorage vs SecureStore)
10. Animations in React Native
Introduction to Animated API
React Native Reanimated & Gesture Handler
Creating Smooth Transitions & Animations
11. Testing in React Native
Unit Testing with Jest
Component Testing with React Native Testing Library
End-to-End Testing with Detox
12. Deployment & Publishing Apps
Preparing an App for Production
Building & Deploying to Google Play Store
Building & Deploying to Apple App Store
Handling App Permissions
13. Advanced Topics
Server-Side Rendering (React Native with Next.js)
WebSockets & Real-Time Apps (Socket.io)
Integrating Native Modules (Bridging Java/Kotlin & Swift)
Building Cross-Platform Apps with Expo