I have been a middle school science teacher for 8 years. The pandemic has created challenges for educators and students that we've never experienced before. From an educator's standpoint, we lose the personal and relationship-building aspect of our job that is essential for serving our youth. As a student, it's difficult to engage and interact with your teachers and peers. School is a place for our students to socialize, connect, and grow together. We want our project to streamline the online learning process and improve the virtual classroom experience for both teachers and students.
What it does
QuizMeet is a Chrome Extension that will enhance the virtual classroom experience on Google Meet. The extension allows teachers to create and post multiple-choice questions to all participants within the video meeting. Participants are able to interact directly within Google Meet's interface in real time to answer those questions. This extension will eliminate the need to share screens, open additional tabs, enter class codes, or use additional devices. As a teacher, you will still be able to see your students' video in Sidebar Layout view while seeing your students' responses immediately after each question. For students, this offers an engaging and interactive atmosphere that is often missing in an online setting. They can earn points based on accuracy and speed to climb up the leader board, which is updated after the answer is revealed. This form of competitive educational gaming is extremely popular in the classroom and QuizMeet makes it accessible even during distance learning. This gives them the opportunity for normalcy and social interactions under these extreme circumstances.
How I built it
The concept and design of the project is based on the popular education website Kahoot! The front end portion of QuizMeet is a Chrome extension built with VueJS. The backend is a python flask server behind an nginx reverse proxy, deployed on a GCP virtual machine. Quiz participants are linked together on a cross-origin websocket connection. Quiz questions are currently hard-coded in the backend. We took some ideas from the open source Chrome extension Nod to help scrape user data from Google Meet.
Challenges I ran into
We originally wanted to integrate with the online quiz platform Kahoot!, but Kahoot! doesn’t provide a public API.
Accomplishments that I'm proud of
- Smoothly integrating with the Google Meet UI.
- Setting up a cross-origin, secure websocket backend.
- Asymmetric initialization for teachers and students.
What I learned
- The websocket protocol
- nginx configuration for SSL and websockets
- Using VueJS as a chrome extension
What's next for QuizMeet: A Better Online Learning Experience
- The extension is based on the extremely popular education website Kahoot!. Unfortunately their API is not available at this time. If Kahoot! makes their API available, then we can directly integrate it with QuizMeet.
- Developing an interface for teachers to create the questions.
- Supporting other browsers besides Chrome.
- Making QuizMeet compatible with other video conferencing tools like Zoom.
- Exploring potential for mobile devices.