Laura Coronel

Course Catalog: React and Rest API

For this project, I created a university course catalog with administration capabilities using React, Express, and Sequelize. First, I wrote a REST API to provide a way to administer a school database which contains information about users and courses. The server and database consist of several fundamental features including:

  • A data relationship between user and course tables
  • Server-side and database validation, to ensure data consistency and usefulness
  • A handrolled auth stack to prevent unauthorized modifications of the data
  • Create, retrieve, update, and delete operations exposed via the API

Once the server-side component was completed, I implemented a React-based frontend for it. This frontend consisted of several views including ones for sign up, sign in, viewing all courses, course creation, and course update/deletion. While authorization to perform certain operations (like updates and deletions) is guaranteed by the server-side, the UI helps prevent these requests by adjusting the UI based on whether the user is the owner of a particular course.

The biggest challenge I faced when writing this course catalogue was redirecting a newly authenticated user back to the restricted webpage the user was previously on. Since React Router has evolved significantly over the past few years, a lot of the research I did turned out to be outdated, including some of my course material. Thankfully, I was able to dive deep into the documentation myself to figure out the answers I needed.

Image of Project #10Image of Project #10Image of Project #10Image of Project #10Image of Project #10