An easy to use tool for students to consolidate their deadlines and assignments at the start of a term!
Website is live at: https://ivaxxnov.github.io/Syllabus-Scanner/
Syllabus-Scanner is a web application designed to streamline the process of organizing schedules for the school semester. It simultaneously processes multiple syllabus files using chatGPT to extract critical information such as course names, assignment details, due dates, and quiz dates. This data is then compiled into a spreadsheet and displayed in a user-friendly way, so it can be edited and corrected as the user pleases. Finally the data can be downladed as a sorted spreadsheet or a calendar file compatible with major calendar applications (Google, Microsoft, Apple) for an ease of mind throughout the school year.
-
Upload Syllabi: Users can upload their syllabus files by dragging and dropping them into the upload section on the web interface.
-
Processing: The application processes the uploaded files through a pipeline, extracting and formatting the necessary information.
-
Output: Users receive neatly organized, downloadable files – a spreadsheet and a calendar file, ready for use.
- File Upload: The interface allows users to upload syllabus files easily.
- Start Process: Users initiate the processing with a button click.
- Progress Bar: While the files are being processed, a progress bar indicates the ongoing operation.
- Download Processed Files: After processing, the interface presents the files for download.
- Pipeline Handler: A function named
pipeline()
orchestrates the entire processing workflow. - Steps in the Pipeline:
- Extract text from PDF files.
- Build a prompt from the extracted text.
- Query chatGPT with the prompt.
- Validate the response from chatGPT.
- Populate a spreadsheet with data for grade calculations.
- Generate a calendar file with the processed data.
- Return the prepared files for download.
- Frontend: JavaScript, HTML, CSS, Bootstrap
- Backend: chatGPT Queries
- Hosting: GitHub Pages
This project is currently in development. Key functionalities are being implemented and refined. Current Status: Testing/Refinement.