Whenever the end of another school term comes close, I always panic over questions like what final grade I will need to hit a minimum x percent, what grade I might walk out of the class with, and what my term GPA will look like with a certain input of grades. I disliked that I had to visit multiple websites to get the information that I want. So I built a website with all the functionality in one place to streamline the process.

What it does

Calculating term GPA: Enter the letter grade and number of units for each class you took this term, for up to six classes. The program will return the resulting GPA and what letter grade the GPA corresponds to. Calculating letter grade: Enter the percent and weight of each assignment in the class. If the total percent adds up to exactly 100%, the program will return the letter grade that you received in the class. Calculating what percent is needed for the final assignment: If the total percent adds up to less than 100%, the program will direct you to a page to calculate the final assignment's grade in order to get a certain total grade.

How I built it

I used HTML5, CSS3, and Bootstrap to create the front end user interface. I used JQuery and Javascript to create the backend logic.

Challenges I ran into

I have difficulties with clearing form values after submitting form data and going back to the homepage, then submitting new form data. I also cannot figure out how to prevent layout distortion when I adjust the page sizing. I have yet to find solutions for both of these issues.

Accomplishments that I'm proud of

I was able to take care of the error handling and indicate it to the user. I also prefilled the forms based on previous values, which was a first for me.

What I learned

I learned about utilizing local memory. Up to this point, I had only used Node.js to keep track of my values from page to page, so being able to use local memory was a great tool to have. I also learned how to preappend form values by using JQuery.

What's next for GradeHelpr

I have yet to implement a function for calculating extra credit points, so I would like to make this option available in the next version of this app.

Share this project: