Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Progressive Web Apps in React with create-react-app



Progressive Web Apps (PWAs) allow a user to use your web app online or offline, and lets them install the app onto their iOS or Android device just like a native app. Sounds great, right? But it can be tricky to properly configure a PWA, and not every feature works on every browser or device.
In this course, we’ll create an online/offline note taking app. We’ll use create-react-app to create the frontend, and node.js to create a simple backend. We’ll start by making sure the app can be displayed offline with cached resources, and learn how to persist data while the app is in offline mode. We’ll also interact with native features like the camera, and learn how to let users install the app on their phone home screen. Then we’ll customize the appearance of the app, including the app icon, splash screen, and phone status bar.
Finally, we’ll deploy the production app to heroku. By the end of this course, you will have everything you need to create a Progressive Web App with React.


  • Course Introduction: Progressive Web Apps in React with create-react-app
  • Create a Progressive Web App with React and Register a Service Worker
  • View the Service Worker and the Cache, and Debug a PWA with Chrome’s Dev Tools
  • Use a Custom Service Worker in a create-react-app PWA without Ejecting
  • Pre-cache Static Resources with Workbox and View a React PWA Offline
  • Listen for `install` and `activate` PWA Events in a Service Worker
  • Cache Third Party Resources from a CDN in a React PWA
  • Cache JSON Data in a React PWA with Workbox, and Display it while Offline
  • Add an Offline Status Indicator to a PWA with React
  • Show an Error when a POST or DELETE Fails in an Offline PWA
  • Add a Custom App Icon to a PWA built with create-react-app
  • Change the Name and Short Name of a PWA built with create-react-app
  • Add a PWA to the Home Screen of an iOS or Android Device, and the Chrome App Home Screen
  • Add Navigation Elements in React to a PWA in Standalone Mode
  • Access the Camera in a PWA built with React
  • Add Push Notifications to a PWA with React in Chrome and on Android
  • Disable Text Selection and Touch Callouts in a PWA on iOS
  • Change the Status Bar Color on iOS and Android in a PWA
  • Customize the Splash Screen of a PWA built with create-react-app
  • Do a PWA Audit with Lighthouse using Chrome Dev Tools

Taught by

Chris Achard


4.5 rating at based on 264 ratings

Start your review of Progressive Web Apps in React with create-react-app

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.