Skip to main content
Version: WIP

✏️ 3.4.5.1 React with NoSQL Independent Project

Independent Projects Overview​


Before you begin your project, make sure to take a moment to review the Independent Projects and Code Reviews lesson.

React with NoSQL Project Objectives​


For this course section's independent project, you'll extend the React Fundamentals independent project to persist its data with Firestore. Continue working in that same project, adapting it to read and write through Firestore instead of local state.

Unlike your React Fundamentals independent project, which only required Create, Read, and Update functionality, this project should implement full CRUD: Create, Read, Update, and Delete.

If you'd rather start a new theme at this stage instead of continuing your existing project, that's fine too - check with your instructor first, since your theme should still support Firestore and, if you attempt the authentication stretch below, a per-user ownership model.

Your code will be reviewed for the following objectives:

  • Application compiles and runs without error, and warnings in the DevTools console are resolved.
  • Firestore is used correctly to persist and retrieve data.
  • Full CRUD functionality (create, read, update, and delete) works correctly, backed by Firestore.
  • TypeScript types are defined for all component props and shared data.
  • README includes an accurate representation of the application's component tree.
  • Project is in a polished, portfolio-quality state.
  • The prompt's required functionality and baseline project requirements are met.

If you have extra time, consider adding one or more of the following:

  • Routing with react-router.
  • Firebase authentication and authorization, so each user only sees and manages their own data.
  • A formatted wait time or ordering based on a Firestore server timestamp.
  • A summary view of your data, such as a total or average across all items - if you wrote a summarizing function back in your TypeScript project, this is a good place to bring it back.

What is a polished, portfolio-quality state?​

When a project is both polished and in a portfolio-quality state, this means:

  • You've reviewed your project and your README prior to submitting it to make sure there are no errors or missing information and you are consistent in your indentation, spacing, and code structure.
  • You are following the best practices and coding conventions we teach.

What are the baseline project requirements?​

All independent coding projects at Fidgetech have these baseline requirements:

  • A complete and informative README
  • The project's commit history demonstrates steady, incremental progress rather than a single large commit
  • Completion of the project based on the prompt and objectives. The prompt contains details on the project's theme and features that are not always detailed in the objective. Carefully read through the prompt before submitting to make sure that you are not missing anything.

Submission​


Submit your code for review to the React with NoSQL code review on Fidgetech Code Central.

Visit Independent Projects and Code Reviews for details on how to submit, how feedback works and course completion requirements.