Full-Stack Academic Curriculum Manager

A full-stack application that manages a school's curriculum and allows registered teachers to create, view, edit and delete courses they offer.

  • The client and server were the ninth and tenth projects, respectively, in my Team Treehouse Full-Stack JavaScript Tech Degree bootcamp.
  • I received the highest grades available for both projects ("Exceeds Expectations").

Server (REST API)

  • Written in NodeJS and uses the ExpressJS framework.
  • Handles user authorization, routing and MySQL queries asynchronously using Sequelize ORM.
  • Deployed using App Engine on the Google Cloud Platform.

Database

The MySQL database is also hosted on Google Cloud using the Compute Engine.

Originally, the project had a simple SQLite database, but after I completed the Treehouse bootcamp I wanted to expand the project and my knowledge of hosted MySQL solutions, so I upgraded it.

Client

The frontend client is written using ReactJS.

  • React displays the site, interacts with the server, handles data validation and makes the site more responsive.
  • The site is deployed to Netlify and was originally written in React's older "class" syntax, but after finishing the Treehouse bootcamp I completely rewrote it using more modern React Hooks.

This challenge was a way to get more practice using these newer, "stateful" functions and to streamline the app for deployment.

Built With

nodejs logoexpress logoreactjs logomysql logo

Deployed With

google cloud logonetlify logo