Calculates CGPA and SGPA for NTU Students for any University with a CAP of 5.0..... sorry SMU
I hosted the frontend on Github Pages and the Backend on Google Cloud!
Website:
https://jordanlianhs.github.io/CGPACalculator/
Below is the UML Class Diagram of the structure of my Course Model along with the controllers, services and repository
After loading into the the application hosted on https://jordanlianhs.github.io/CGPACalculator/, you will be greeted with an empty course page with no courses.
Next you can key in your total credits to graduate, as for me, I have 135 credits! Once keyed in, react saves it in the local storage so once you refresh, the value will persist.
- To add courses, I would recommend adding all the courses in a go. This is done by using the
Convert HTML of Courses to JSON
andAdd Course Via JSON
buttons on the navigation bar. !!! THIS ONLY WORKS FOR NTU CORS headers prevents me from reading data from another website hence mass adding courses is only configured for NTU peeps as I'm from NTU ya. For other schools, please use theAdd Courses
/Add Course
function on the Nav bar a. Click on the barConvert HTML of Courses to JSON
b. Naviagate to your NTU Degree Audit Website c. Hit Ctrl + Shift + I for windows or Fn + F12 for mac to go into inspect element. Hit Ctrl + F / Cmd + F in the elements tab. Search for /html/body/div[3]/div/div/section[2]/div/div/center/font[3] in the XPath or the element that contains all the information about your courses. Right click the element andCopy element/Copy outerHTML
d. Paste it into the HTML input box, hit convert to JSON and copy the geenrated json for the courses e. Paste the generated JSON into theAdd Course Via JSON
button on the navigation bar. f. Tada all courses are implemented
The other alternative ways to add courses are either to use Add Courses
/Add Course
-
Add Courses
will allow you to add multiple courses while under the Added Courses, you can see the history of courses you have added -
Add Course
will add one course before directing you back to the home page -
Edit Course
will allow the user to edit information about the course. Editing the course code means we have to delete the course -
Delete Course
will allow the user to delete the selected course