Inspiration

It's currently midterm season, and everyone is busy studying for their exams. This process can be boring and tedious, so we were inspired to make an app that makes it fun for everyone. We wanted the questions in this app to be related to concepts that students were studying, and turn their studying into a game where they can compete with their friends in the same class to test each other’s knowledge on the concepts.

What it does

The host of the game can create a lobby after uploading their notes to the website. A QR code is automatically generated for the rest of the people to scan and join on their phone, which is where one will be answering the questions. The host can then start the game, and the app will automatically generate 5 questions based off of the keywords in the notes that were uploaded. These keywords were run through our questions database, and we randomly chose questions that were related to said keyword. Now, the players can answer the question on their mobile devices, and see how they compare to each other on our leaderboard page that shows up after every question.

How we built it

First, the rough outline of our app was detailed, which helped us create the necessary Figma frames for each page. Then, we got the basic layout of each page, making sure that the styling was figured out before we made it flexible with components and variables. Finally, we connected the backend to our frontend, and implemented the question generation algorithm.

Challenges we ran into

One of the main challenges we ran into was generating questions. It was hard getting questions based on notes that are uploaded to the website. One big question we had was how do we generate questions related to the notes, and also generate wrong answers that are similar enough to be reasonable. We are still working on polishing our answer generation, but to get relevant questions we used optical-character recognition (OCR) to read handwritten notes and pull out the most frequent words as keywords. Using these keywords, we were able to get questions that are similar to the concepts. For now, answers are randomly selected from similar questions, but they sometimes do not make sense in the context of the specific question.

Accomplishments that we're proud of

We were able to create a working quiz game

Learned OCR

What we learned

Working with websockets and how to do multi client server communication

OCR

What's next for Quizlash

In the future, we are planning on implementing an NLP model that can generate new questions and answers based on text inputted. We have already found a model that we could use to accomplish this task, which is a combination of BERT and T5 Transformers, along with NLTK and Spacy to help parse sentences.

Built With

Share this project:

Updates