- Module 1: What is React Native?
- Module 2: Getting started
- Module 3: Core React Native Components
- Module 4: Styling
- Module 5: React Native APIs
- Module 6: Deployments
- Module 7: Authentication with Firebase
- Module 8: Processing Authentication Credentials
Module 1: What is React Native?
- Abstracting React from the DOM
- Advantages of React Native
- React Native vs Web Apps
- React Native vs React web
Module 2: Getting started
- Installing React Native
- iOS setup – XCode
- Android setup – Android Studio
- Run an example project in iOS and Android simulators
Module 3: Core React Native Components
- Establishing a layout with View
- Displaying text with Text
- Accepting user input with TextInput
- Adding images with Image
- Making components interactive with TouchableHighlight
- Displaying data with ListView
- Changing screens with Navigator
- Expanding touch capability with GestureResponder and PanResponder
Module 4: Styling
- Issues with CSS
- Inline Styles
- Create Immutable style objects with Stylesheet.create
- Pass styles as props
- Positioning components with flexbox
Module 5: React Native APIs
- Using fetch to retrieve data
- Getting a user’s location and handling permissions
- Accessing stored photos with CameraRoll
- Adding animations
Module 6: Deployment
- Deploying to Apple App Store
- Deploying to Android Play Store
Module 7: Authentication with Firebase
- A Common Root Component
- Copying Reusable Components
- What is Firebase?
- Firebase Client Setup
- Login Form Scaffolding
- Handling User Inputs
- More on Handling User Inputs
- How to Create Controlled Components
- Making Text Inputs From Scratch
- A Focus on Passing Props
- Making the Input Pretty
- Wrapping up Inputs
- Password Inputs
Module 8: Processing Authentication Credentials
- Logging a User In
- Error Handling
- More on Authentication Flow
- Creating an Activity Spinner
- Conditional Rendering of JSX
- Clearing the Form Spinner
- Handling Authentication Events
- More on Conditional Rendering
- Logging a User Out and Wrapup