In this week’s blog, I want to log the process of the capstone project I’m working on with my team. The project we are building is a Software Programming Quiz web application and has been going well. This web app allows a user to create a new quiz set with customized questions of various types such as true/false, multiple-choice, and free form. Even though the target user would be an employer who wants to send out a set of quizzes to potential candidates to evaluate their knowledge on a topic, this app can be used by anyone with different purposes.
As a team of three, we split the tasks into three parts, generating quizzes, sending the quiz to a candidate, and user authentication. Each part has its own server running on Google Cloud Platform written by Node and Express. In the previous class, Cloud Development, we weren’t allowed to use any libraries assisting authentication and authorization and had to understand the interactions between the server and the cloud. Dealing with tokens and codes for validation was fun but painful.
In the capstone project, PassportJs, authentication middleware in Express, is doing all these jobs alone. It’s very simple, well-integrated with Google OAuth, and sets a session easily. A big blocker to solve is to send the session and cookie to the browser when using the deployed server. I’m hoping I can fix this issue before the midpoint assignment.
As always, working with ReactJs is so fun and this is the best time to practice using hooks. Wiring up the client to my own server is kind of sweet and gives me good opportunities to grasp Rest API and internet protocols. I’m hoping the knowledge will benefit my future career as a software engineer.