Inspiration
Many students, myself included, want a way to keep track of their grades, but making the framework for it (i.e. an excel spreadsheet) for each course that they're in can be tedious and time consuming. Our idea was to create a program that parses your syllabus and creates a spreadsheet that you can then use to keep track of your grades.
What it does
Once the program is run, a GUI window pops up prompting you to select a syllabus. This is provided as a PDF, and is uploaded from your computer's local storage. The program then confirms that you have selected a PDF, and you can use the Generate CSV button to create a CSV file containing the grades spreadsheet built specifically from the provided syllabus.
How we built it
We needed a way to parse the information within the PDF to make the CSV file, so we used Gemini 2.5. Gemini handles reading the PDF, and parsing the information which is then used to create the CSV file. The GUI was built using JavaFX, with some CSS mixed in to make it look nice.
Challenges we ran into
None of us had worked with the Gemini API before, so it was the most challenging part for us to implement. We often ran into bugs that took a long time to fix due to us being very unfamiliar with the API and not knowing what possible fixes could be.
Accomplishments that we're proud of
The fact that our program works and looks nice, as we had our doubts given the time constraints.
What we learned
We learned how to navigate the Gemini API and integrate within a JavaFX program. Specifically, we also learned how to use it to parse PDF file contents and use a prompt to generate information based on that content. We also figured out how to upload and download files to and from the program within Java, which none of us knew how to do before.
What's next for Super Grade Tracker
- Ways for students to track their priorities throughout the semester, possibly through an AI helper. This would also require a framework for viewing the spreadsheets within the JavaFX program.
- Extract date data from the syllabi and sync it with calendar programs like Google Calendar and Apple Calendar
- An aggregator to collect the highest weights from all courses or the soonest dates to see what students should prioritize the most
Built With
- gemini-2.5
- java

Log in or sign up for Devpost to join the conversation.