Skip to content

Latest commit

 

History

History
48 lines (42 loc) · 1.41 KB

File metadata and controls

48 lines (42 loc) · 1.41 KB

eCommerce app Study Case

This is a study case of an eCommerce React Native app. The app is a simple online store that sells products. Node.js with Express is serving Rest API and MongoDB is used as database.

The App Stack

  • Node.js, Express, MongoDB
  • React Native
  • TypeScript
  • Expo, Expo Build
  • Expo-router
  • Redux, Redux Thunk, Redux Toolkit
  • RTK Query
  • Stripe Payment Gateway

Backend Covered Topics

  • Setup Development Environment
  • Initialize a Node.js Project with TypeScript
  • Safe Environment Variables
  • JWT Authentication, MongoDB, and Node.js
  • Create a Middleware to Validate the Authenticated User
  • Create a Service to Communicate with the Database
  • Create the User Controller to Test Authorization
  • Define a function to deserialize the User
  • Define a Middleware to Restrict Unauthorized Access
  • Create the Authentication Routes
  • Register users
  • Login user
  • Products CRUD
  • Orders CRUD for authenticated user
  • Stripe Payment Gateway

Mobile Covered Topics

  • React Native, Redux Toolkit & RTK Query setup
  • ESLint, Prettier setup
  • Create a Custom Fetch Base in RTK Query
  • Use safe environment variables in React Native
  • Create the API Queries and Mutations with RTK Query
  • Connect the Queries and Mutations to the Store
  • RTK Query Cache manipulation
  • React RTK Query CRUD
  • Expo development builds
  • Stripe integration
  • Configure new expo router
  • User authentication flow
  • Secure token storage