Skip to main content
Version: v1.4

📓 3.4.0.1 React with NoSQL Objectives

In this course section, we'll learn how to persist data with a NoSQL database. We'll use Google's Firebase, an app development platform that provides many services including NoSQL databases, authentication, and hosting.

We will cover the following concepts about NoSQL databases:

  • The differences between NoSQL and SQL databases.
  • How data is saved in NoSQL database.
  • The CAP theorem, which describes distributed NoSQL databases.
  • The acronym BASE that further describes the CAP theorem.

When working with Firebase, we'll use the following services and integrate them into the Help Queue project:

  • A Firestore database (a type of NoSQL database)
  • Authentication
  • Hosting

In this course section, we'll build on the hooks you learned in React Fundamentals. You already know how to use useState(). Here's what we'll cover next:

  • The useEffect() hook, for running side effects like subscribing to a database
  • The rules of hooks and best practices for using multiple hooks together
  • How to write a custom hook to package and reuse stateful logic

Once we're comfortable with these new tools, we'll start adding Firebase services to the Help Queue.

We'll also cover these additional topics:

  • Structuring data in Firestore databases
  • Routing with React Router
  • Making Firestore queries
  • Adding a wait time to the Help Queue
  • Styling components with styled-components
  • Other further exploration activities

Independent Project Objectives


For this course section, the independent project will be different from previous weeks. You will spend your normally scheduled independent project time studying for a whiteboard technical interview. Then, you will take part in a whiteboard technical interview with your peers. You will submit peer evaluations for the technical interviews you participate in and also submit your whiteboard solution in lieu of the usual independent project. More details on technical whiteboarding will be provided in this weekend's homework.

This course section's group whiteboard interview will be reviewed for the following objectives:

  • Whiteboard solution has been submitted.
  • Whiteboard interview meets all requirements (based on peer feedback).
  • Your evaluations for peers are complete and include constructive feedback.