Getting Ready To Hit The Ground Running!
Running Snacks On Your Device
Running The FocusTime Demo On Your Device
Proper Preparation Prevents Poor Snacking!
Quick Recap On What We've Done So Far
A Rundown Of What's In Our Snack
How To Avoid The StatusBar
Setting Up Our Focus Feature
Adding A Countdown Component
Hooking Up The Progress Bar
Vibrating When The Timer Ends
Focus History Feature Setup
Populating The Focus History
Before You Start Read This!
[MAC] Exporting FocusTime Locally
[MAC] Installing Node and Yarn
[MAC] Running it on IOS Simulator
[MAC] Installing Android Studio
[MAC] Installing Android SDK Tools
[MAC] Running On An Emulator
[MAC] Optional: Using GIT With Visual Studio Code
[WINDOWS] Exporting FocusTime Locally
[WINDOWS] Installing GIT And VSCode
[WINDOWS] Optional: Using GIT With Visual Studio Code Part 1
[WINDOWS] Optional: Using GIT With Visual Studio Code Part 2
Github What Is It Good For?
[WINDOWS] Optional: Publishing Your Code To Github
[MAC] Optional: Publishing Your Code To Github
[WINDOWS] Installing Android Studio
[WINDOWS] Installing Node and Yarn
[WINDOWS] Running FocusTime On My Device
What If I'm Still Running Into Issues?
Exercise: Imposter Syndrome
React Native Flexbox And Snacks
Spring Cleaning The Expo Setup
Quick Note On Publishing Your App
Keeping Up With The Code Step By Step
Setting Up Eslint And Prettier
Feature Overview Restaurant List Item
Restaurant Info Setup Part 1
Restaurant Info Setup Part 2
Exercise Restaurant Info Card
Solution Restaurant Info Card
Reflection Time Restaurant Info
The Way We Are Styling Feels Weird
Trying Out Styled Components
Installing And Using Styled Component
Quick Note On How To Look At Changes
Exercise Migrating To Styled Components
Solution Migrating To Styled Components
Uhoh We Have An IOS Error
How Do We Make Things Consistent?
Custom Fonts Fonts Fonts!
Exercise Adding Open Now SVG
Solution Finishing Our Restaurant Card
Building A Spacer Component
Optimizing The Spacer Component
Wait A Second It Won't Render On Android
Hold Up Why Do We Need Consistency
Creating A Typography Component And Cleanup
Note On Content Container Style
Why Is There A White Bar?
Feature Overview: App Navigation
Simplifying Tab Icon Logic
Feature Overview: Adding Data!
Quick Recap Of What We'll Be Doing
Quick Refresh On Promises
Let's Transform The Data Part 2
Setting Up RestaurantContext
Exercise Activity Indicator
Solution Activity Indicator
Quick Architecture Overview
Feature Overview Geocoding And Search
Setting Up Our Geocoding Service
Setting Up Our Geocoding Context
Searching For Restaurants
Let's Optimize Before We Build!
Building Navigation Infrastructure For Scale
Setting Up Stack Navigation
Setting Up Restaurant Detail Navigation
Modals And Touch Feedback
Exercise Rendering The Card
Solution Rendering The Card
Installing React Native Maps
Custom Map Callout Exercise
Custom Map Callout Solution
Linking A Callout To Details
Feature Overview Favourites
Hooking Up Favourites Part 1
Hooking Up Favourites Part 2
Building A Favourites Bar Part 1
Building A Favourites Bar Part 2
Feature Overview Firebase And Authentication
Let's Test Authentication
Authentication Service And Context
Account And Authentication Navigation
Image Background Exercise
Image Background Solution
Lighten Up The Background
Feature Overview: Registration
Favourites Is Broken Part 1
Favourites Is Broken Part 2
Adding A Watermelon Animation
Feature Overview: Settings
Building The Settings Feature
Making The Settings Screen Look Nice
Favourites Screen Exercise
Favourites Screen Solution
Important Note On This Section!
Setting Up Your Payment Information For Firebase
Quick Note On Running Functions Locally
Running Firebase Functions Locally
Moving Location Mock Part 1
Moving Location Mock Part 2
Switching Between Local And Deployed Functions
Oh No Android Doesn't Work!
Creating a Google Cloud Account
Configuring Our Google Cloud Project
Setting Up Google Node SDK
Integrating Geocoding API
Integrating Places Photos
Publishing Our Expo App And Functions
Stripe Integration Architecture
Quick Recap On Firebase Functions
High Level Stripe Payment Flow
React Native Stripe Client
Getting Our First Stripe Token
Hooking Up Our Credit Card Form
Building The Cart Context
Starting On The Payment Flow
Building Our Payment Gateway
Exercise Cart Persistance
Solution Cart Persistance
What Will I Get Out Of This Section
Building An APK For Android
Running Our APK On The Emulator
Creating A Play Store Account
Testing Your iOS Build On A Simulator
AppStore Connect And TestFlight
React App Folder Structure
Class vs Functional App.js
Quick Note: Service Worker File
Your First React Component
The Dirty Little Secret To Become An Expert
Exercise: Learn to Read the Docs
Quick Note: JSON Placeholder
Keeping Your Projects Up To Date
Solution: Try Upgrading to React 18
Error Boundaries In React
New React Hooks Documentation