uniLeague – Bachelor Project

A project Glenn has created called uniLeague – Bachelor Project

Project Outline

const quickFacts = {

  • Timeline: Late December – May 2022
  • Type: Group Project
  • Course: IDG3920 - Bachelor Project
  • Role: Low-fidelity Design, Full-stack Developer
  • Tools: Balsamiq, MongoDB Express React Node (MERN)
  • Client: Associate Professor at Department of Design at NTNU in Gjøvik

Problem Description

An associate professor at NTNU in Gjøvik is holding Kahoot-quizzes at the end of each lecture. At the end of the semester, all the scores from the Kahoot-quizzes gets summarized. The student with the most points will win a prize for their efforts during the course. However, summarizing the scores is a tedious task where human error can be a factor.

Our Solution

uniLeague is a web application where a teacher can upload an excel-file they get when downloading the scores after the Kahoot-quiz. The application will take the scores and automatically summarize them, and then display them for both students and teachers to see. A student can see their individual quiz performance, while the teachers can see how the students are ranking on the leaderboard in their course.

Improving uniLeague

My role in the project

The resultpage for the course IDG2100 on the application uniLeague

In this project, I was responsible for the front-end and connecting the front-end to the back-end. I have used HOCs, writing stateless and stateful components, writing logic for logic-based components, and created the user authorization for the front-end by using a context-provider.

Code Optimization

For this project, I would like to optimize the code. The whole front-end was created in 2 weeks to make it ready for testing. This meant that a lot of shortcuts were taken to be able to finish the project within the timeframe that were set. Instead of using ternary operators, I could have used conditional rendering with && operator. This would remove a lot of unnecessary “: null” code-snippets. Furthermore, the “hide/show password” button in the login-component could be improved. As of now it is more or less forced into place and thus it is less “accessible” that it can be.

Code showing the toggle between hide/show password

Other projects you may like