Welcome To This Course & What To Expect!
Join our Online Learning Community
A Glance Under The Hood Of React Native
Creating React Native Projects: Expo CLI vs React Native CLI
Creating React Native Projects
Creating a New React Native Project
Analyzing The Created Project
Running Our First App On A Real Device!
Setting Up A Local Development Environment
Course Resources Code Snapshots & How To Use
Exploring Core Components & Component Styling
Working With Core Components
Styling React Native Apps
React Native: Core Components Styling & Colors - More Information
Exploring Layouts & Flexbox
Using Flexbox To Create Layouts
Components Styles Layouts
Managing A List Of Course Goals (in our Demo App)
iOS & Android Styling Differences
Making Content Scrollable with ScrollView
Optimizing Lists with FlatList
Splitting Components Into Smaller Components
Working on the "Goal Input" Component
Handling Taps with the Pressable Component
Making Items Deletable & Using IDs
Adding an Android Ripple Effect & an iOS Alternative
Styling the Modal Overlay
Opening & Closing the Modal
Working with Images & Changing Colors
Module Introduction & What We'll Build
Starting Setup & Analyzing the Target App
Setting Up our Screen Components
Styling for Android & iOS
Styling the "Number Input" Element
Configuring the TextInput Field
Adding Visual Feedback to the Buttons
Coloring the Components & The Overall App
Adding a Background Image
Getting Started with the Game Logic
Handling User Input & Showing an Alert Dialog
Switching Screens Programmatically
Starting Work on the Game Screen
Respecting Device Screen Restrictions with the SafeAreaView
Creating a Title Component
Creating Using & Displaying Random Numbers
Adding Game Control Buttons ("+" & "-") to the App
Improving the Game Screen Visuals
Working with Icons (Button Icons)
Adding & Using Custom Fonts with React Native Apps
Adding a (Foreground) Image
Using & Styling Nested Text
Adding Logic to (Re-)Start Games & Displaying a Summary Screen
Outputting Log Data with FlatList
Styling the Game Round Logs
Introducing the Dimensions API
Adjusting Image Sizes with the Dimensions API
Understanding Screen Orientation Problems
Setting Sizes Dynamically (for different Orientations)
Managing Screen Content with KeyboardAvoidingView
Improving the Landscape Mode UI
The Dimensions API & Responsive UIs
Further Improvements with useWindowDimensions
Writing Platform-specific Code with the Platform API
Getting Started with the App & Outputting Meal Categories
Displaying Items in a Grid
Getting Started with the React Navigation Package
Implementing Navigation Between Two Screens
Setting the Default Screen
Understanding the useNavigation Hook
Working with Route Parameters To Pass Data Between Screens
Styling Screen Headers & Backgrounds
Setting Navigation Options Dynamically
Adding & Configuring the Meal Details Screen
Outputting Content in the Meal Detail Screen
Finishing the Meal Detail Screen
Adding an Icon Button to a Header
Adding Drawer Navigation & Creating a Drawer
Configuring the Drawer Navigator & The Drawer
Adding Configuring & Using Bottom Tabs
Bottom Tabs & App Finishing Touches
Getting Started with React's Context API
Managing App-wide State with Context
Using the Created Context with useContext
Managing Favorite Meals with the Context API
Getting Started with Redux & Redux Toolkit
Working with Redux Slices
Managing Redux State & Dispatching Actions
Using Redux State in Components
Module Introduction & What We'll Build
Adding Navigation (with React Navigation) & Configuring Navigation
Adding Global Colors & Editing Navigation Configuration
Creating Key App Components to Display Expenses
Continuing Work on the Expense-related Components
Adding Dummy Expense Data
Outputting a List of Expenses
Improving App Layout & Styling
Working on Expense List Items
Adding a Header Button & Making Expense Items Tappable
Navigating Programmatically Between Screens
Styling The Expense Management Screen
Supporting Different Editing Modes & Using Route Parameters
Closing A Modal Programmatically
Managing App-wide State With Context
Using Context From Inside Components
Deleting & Updating Expenses
Building a Custom Input Component
Configuring the Form Input Elements
Handling User Input in a Generic Way
Managing Form State & Submission
Working with Entered Data
Setting & Using Default Values
Providing Visual Validation Feedback
Sending POST Http Requests
Fetching Backend Data (GET Requests)
Transforming & Using Fetched Data
Using Response Data from POST Requests
Updating & Deleting Backend Data (UPDATE & DELETE Requests)
Managing the Loading State
How Does Authentication Work?
Controlling Signup & Login Screens
Sending Authentication Requests to the Backend
Authentication Error Handling
Storing & Managing the User Authentication State (with Context)
Extracting the Authentication Token
Adding a Logout Functionality
Accessing Protected Resources
Storing Auth Tokens on the Device & Logging Users In Automatically
A Note About Token Expiration
Adding a "Favorite Places" List
Editing the Favorite Place Items
Adding an "Add Place" Screen + Navigation
Getting Started with a Custom Form
Adding & Configuring the Camera Package (for Native Camera Access)
Taking Photos on iOS + Managing Permissions
Getting Started with the Location Picker
Adding a Location Preview Map
Adding an Interactive Map (Google Maps & Apple Maps)
Allowing Map Interaction & Adding Markers
Confirming Picked Locations
Previewing Picked Locations
Adding a Form Submit Button
Managing Location & Image State in the Form
Converting Picked Locations to Human-Readable Addresses
Passing Entered Data to the "AllPlaces" Screen
Outputting a List Of Places
SQLite: Getting Started & Initialization
Preparing Code to Insert Data into the SQLite Database
Inserting Places into the Database
Fetching Places from the Database
Adding the Place Details Screen
Fetching Place Detail Data from the Database
How Exactly Does Expo Work?
Using Expo's Bare Workflow
Using Native Device Features with the Bare Workflow
Ejecting To The Bare Workflow
Creating Projects with the React Native CLI (no Expo)
Non-Expo Apps & Native Device Features
Publishing Apps: An Overview
Key Configuration Items & Considerations
Configuring App Names & Versions
A Quick Note About Environment Variables
Adding Icons & A Splash Screen
Building Expo Apps with EAS
EAS for iOS (even on Windows Devices)
Building for iOS Without Expo
Building for Android Without Expo
What are (Local) Notifications?
Adding the Expo Notification Package
Configuring Scheduled Notifications
Handling Incoming Notifications
Local Notifications - Permissions
Reacting To Incoming Notifications
Reacting To User Interaction With Incoming Notifications
Understanding Push Notifications
Sending Push Notifications