Inspiration

Remote learning is becoming more and more common within our education system. On its face it promises to decrease the costs of education, increase accessibility by removing geographic barriers and significantly increase classroom capacity. However in practice educators have struggled with student motivation when trying to facilitate remote learning experiences. One simple solution to this is to personalize homework assignments to cater to each student individually, but this puts an undue burden on an already overworked and underpaid teacher workforce were it to be done manually. Leveraging generative AI we can automate this process, alleviating teacher workload while increasing student engagement and reaping the full benefits of remote learning.

What it does

Our project is a web-based platform that accepts assignment questions from teachers and alters the semantics of the question using Google Gemini's API according to students preferences (ie "Minecraft", "Fortnite" etc) while maintaining question syntax across all student assignments. The platform allows students and teachers to make individual accounts where teachers upload a single assignment file which is then received by all student in the associated classroom. Students are then able to select from a curated list of potential topics and then are able to access a 're-skinned' version of the assignment to complete. Students are then able to upload their completed assignment to be reviewed by the teacher.

How we built it

The project was built primarily using javascript, utilizing react.js for the front-end, node.js for the back-end and mongodb to instantiate the database holding user credentials. Authentication integrity was handled using bcrypt library allowing for secure user registration and login. Upon upload files are stripped of their plain-text content which is then passed through Google Gemini's API along with the desired student topic to produce the 're-skinned' student assignment which is then converted back into a pdf file for download. PDF conversion is handled using node.js pdf libraries.

Challenges we ran into

While each individual components of the front-end and back-end work on their own we ran into serious issues integrating the components. For example we are able to successfully strip and send converted pdf files to Gemini and reconvert the received personalized response. Further we have a functioning front-end UI login, registration and page navigation, a functioning back-end database and file upload system. However, we were unable to succeed in passing the uploaded file and selected student preference to the Gemini back end in the time allotted.

Accomplishments that we're proud of

As mentioned above we did successfully implement our individual components. We're proud of our ability to have tackled platforms we were unfamiliar with in a extremely short time frame. While we were not able to integrate them altogether we were very successful in integrating ourselves as a team.

What we learned

The primary lesson we learned was one of humility. In an effort to develop our own skills as programmers we set out to complete our project in platforms we were not deeply familiar with. This approach combined with what was perhaps the overly ambitious aim of generating a full stack website in 24 hours in effect amounted to throwing ourselves into the deep end. While we did greatly expand our capabilities with mongodb, react.js, node.js etc, it would likely have been a better course of action to either have set out with a more conservative aim for the project scale or simply have worked with platforms we were more familiar with.

What's next for NovaTeachDev

Beyond ironing out basic component integration mentioned above we would ultimately like to increase student autonomy by adding functionality to aggregate student interests and provide them as the possible topics for assignment re-skinning. Additionally we would like to add automatic grading functionality to further decrease teacher workload.

Share this project:

Updates