Course outline

React Native

React Native is a framework to build mobile apps using only JavaScript. It's using React, so we compose the rich mobile UI from simple declarative components.

With React Native, you don't build an "HTML5 app", you build a REAL mobile app that you can distribute on the App store. React Native uses the same fundamental UI building blocks as regular iOS and Android apps. You just put those building blocks together using JavaScript and React.

React Native is used by a lot of apps you are using every day, including Facebook, Instagram, Tesla, Skype and Uber.

Day 1

Basics of the Native platform
1. Introducing React Native 
  • React Native under the hood
  • Architecture of React Native
2. Dev environment setup 
  • Expo
  • Using CLI
  • XCode
  • Android Studio
3. Using Expo 
  • Using phone and web emulators
  • Hello, world
  • Using the In-App Developer Menu
  • Using the integrated debugger with VS Code
  • Using the React Dev Tools
  • Fast refresh
4. Web vs Native 
  • Routing vs Navigating
  • Android vs iOS vs Web
5. Core Components 
  • Common React Native Components
  • Libraries (NativeBase)
  • View and Text
  • Icons
  • Touchables
  • Sliders
  • TextButton
  • Lists
  • ScrollView vs FlatList vs SectionList
  • Forms and React Native
  • Form Components

Day 2

Advanced React Native
6. Styles in React Native 
  • Stylesheet vs Inline
  • Media queries
  • Css in Js Libraries
  • LayoutAnimation vs Animated API
7. Flexboxes 
  • Axes, Flex Direction
  • Justify, align, Center Content
  • Flex Grow
8. Navigation 
  • Routes
  • Navigation
9. Working with Data 
  • Fetch vs Axios
  • Redux
  • Redux Starter Kit
  • Suspense
10. Integrating with existing apps 
  • Dependencies
  • Permissions
  • Integrating React Native in the code base
11. Finishing Touches 
  • Geolocation
  • Asking permissions
  • Deployment