Inspiration
In our schools, teachers and parents both express concerns about the precedence of AI and its use for assignments, as there is an uncertainty on whether the assignment was written by AI or by the student, making it harder to assign a grade to the assignment. Since this problem was so prevalent, teachers began moving to handwritten assignments, yet these took longer to grade, and students are just finding loops around this, as they just plagiarize off AI, this time its even harder to to check for authenticity, now needing to scan texts to check for AI, causing more time lost. This led to the creation of Write One, to improve student integrity and allow for teachers to grade fast and without worry of plagiarizing.
What it does
Write One scans handwritten assignments and evaluates them for authenticity. Using handwriting recognition, pattern detection, and verification given by Gemini, it determines whether the work is likely to be written by the student or an artificial intelligence model. This allows teachers to validate the authenticity of the writing assignment, leading to improved student integrity and less strain on the eyes as they get their eyes off the computer and onto paper.
How we built it
Before the competition, we were discussing different ideas for the hackathon, and what came up in conversation was the increasing amounts of handwritten assignments we had due the teachers lack of trust of digital assignments, yet we realized that the emphasis on handwritten assignments only just caused more writing, yet didn't reduce the amount AI was used. We began looking at solutions to this, and we thought about AI checkers, yet those would require the teacher to scan them in a printer, and would be time costly and ineffective. We then came up with the idea of having an AI checker on your phone, and then just take a picture, reducing time needed. We had an idea, yet we didn't create anything until the competition began. We first established what type of app we we're building, which was a mobile app. We then installed the required software's, which is google flutter and android studios. We then began to design the UI of our app on Uizard, a website that allows for UI design, and once we fully established what each of the page looked like in the app, we began to program the functionality of each page based off the UI. We used Anthropic AI to transfer the UI from Uizard into code. We used the flutter camera plugin to allow it to take pictures, and then we uploaded the photo data to MongoDB to store them. Afterwards, we used Google Cloud Vision OCR, a library that allows for OCR(Optical Character Recognition), meaning it converts images to text. We then incorporated Gemini API into our code so that it could analyze patterns detected in that text, we received, and then would display the output..
Challenges we ran into
Our main challenge was integrating Supabase for authentication purposes, and getting the app working for IOS, and after lots of trial and error, we decided to just run it on android studios, as for some reason, it was just crashing for IOS.
Accomplishments that we're proud of
We are proud of the fact that even though this was our first hackathon and our first time using Google Flutter, and the programming language called Google Dart, Supabase, and MongoDB, we were able to build an app at this level this fast.
What we learned
We learned how to program using dart, using concepts for google flutter, and how to integrate a database into our program, and the thought process when developing UI. We also developed experience for hackathons, so when we compete in hackathons down the line, we know we will be doing further down the line.
What's next for Write One
- Make sure it works for IOS
- Train the model to learn different handwriting types, so that it can read different writing by different people.
- Expand it's languages, so it can be used for other languages besides English.
- Partner with schools to get it more integrated into schools and academic settings.

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