After having submitted a survey to choose my capstone project, I was assigned the software programming quiz web application. The basics of the project involve the following:
- must be accessible by web browser for interaction via a desktop computer
- have a responsive design to work on any device
- use a backend to store quiz and employer information
- email students with a link to the quiz
Each of these points can be broken down into the software stack my team has decided to use.
React provides a great foundation to create an amazing front-end for our web application. It also allows us to easily modularize the pages to break up the work equally. We all expressed interest in learning more about React as it’s one of the most popular front-end technologies to know.
Next we have to consider how to make the application responsive to different screen sizes. For a basic webpage, Bootstrap is a great way to accomplish this task. Luckily for those using React, there is a Bootstrap library with components pre-made. Using this library will allow us to all be consistent and have our pages be responsive.
Google App Engine
For the backend we have decided to use Google App Engine and Google Datastore NoSQL database. Two of my group-mates already had experience using this service. It also provides a cheap, scalable, easy to use platform for hosting basic Node.js servers. We will have our backend and frontend servers hosted on Google App Engine.
This portion is the one that’s most up in the air. While all the other portions of our stack are foundational to how the software will be written and hosted, the emailing portion has a variety of packages that could be used. EmailJS seems like a simple solution to use that works with an associated gmail account. Several tutorials I’ve seen also show how it works well within a React framework.
Finally, we will be using GitHub to version control and share code. We’re all very familiar with this service now, and have decided rules for pull requests and code reviews.