Inspiration
The idea for Examly came from a moment I experienced firsthand last year, when I froze about halfway through an oral exam because I genuinely had no idea how to prepare for something that required speaking my answers out loud under pressure. I had spent hours rereading notes and running through flashcards, and none of it translated into the confidence I needed once a real person was sitting across from me asking questions live and expecting an immediate, coherent response. What struck me afterward was that this gap exists for almost every student who has ever had to give a presentation, defend a project, or sit for a spoken assessment, and yet nearly every study tool available is built around reading and typing rather than speaking and thinking on your feet. I wanted to build something that could actually stand in for that missing practice partner, something that would ask me questions the way a real examiner would and give me honest, specific feedback afterward instead of just a grade, and that is where Examly started.
What it does
Examly turns whatever a student is studying into a live, adaptive oral exam that is conducted almost entirely through natural conversation and speech. A student can start by simply talking to an AI tutor in the Chat tab about whatever subject they are working through, asking questions and getting explanations the same way they would from a real tutor, and that same conversation can later be converted directly into an exam without any extra setup. Alternatively, a student can upload an actual paper, a set of notes, or a study guide, and Examly will read through it and build questions from the real material. Once the exam begins, the questions are spoken aloud and answered aloud in real time, and the difficulty adjusts continuously depending on how the student is performing, while the system also pays attention to behavioral signals such as hesitation and facial expression that a real examiner would naturally notice. When the exam ends, the student receives a full breakdown of their performance organized by concept rather than a single score, and that information feeds directly into a History tab where every past exam can be revisited, a Next Steps tab that builds a personalized study plan and calendar around exactly what the student struggled with, and a StudyPlan tab that lays out a complete walkthrough of the entire subject with the student's specific weak points highlighted using real evidence from their past answers.
How we built it
The backend is a Python application built with FastAPI, and it relies on Groq's llama-3.3-70b-versatile model to handle everything from generating exam questions and grading spoken answers with partial credit to writing personalized study recommendations and building the full StudyPlan curriculum. For the behavioral tracking during the exam, I integrated MediaPipe's FaceLandmarker model to run real facial blendshape detection directly in the browser, which lets Examly observe genuine signals like brow tension, eye movement, and frowning rather than simulating anything, and I paired that with the Web Speech API to handle both text to speech for reading questions aloud and speech recognition for capturing spoken answers. The frontend itself is built in vanilla JavaScript without a framework, which gave me full control over the interface as I iterated on it repeatedly, and I used Chart.js to build out the analytics dashboards that visualize a student's concept mastery and progress over time. One detail I am particularly proud of is the ambient exam room audio, which is not a recording but a fully synthesized soundscape built from filtered noise, including things like a fan hum, pencils moving across paper, pages turning, and the occasional cough, all generated live through the Web Audio API so that a practice exam actually feels like it is taking place somewhere real.
Challenges we ran into
One of the earliest challenges was getting the AI to reliably return structured data I could actually build a user interface around, since a model that occasionally adds a sentence of commentary before or after a JSON object will break a strict parser, so I had to write my own tolerant extraction logic that could recover valid JSON even when the response was not perfectly clean. Building the ambient audio was harder than it sounds as well, because my first attempt used simple oscillator tones that sounded nothing like a real classroom, and I had to rebuild the entire system around filtered and enveloped noise to make coughing, rustling paper, and pencil writing actually sound believable. I also had to be careful and deliberate about how I framed the facial tracking feature, since it would have been easy to overstate what the technology can actually detect, and I made a conscious decision to describe every signal honestly as a behavioral observation rather than a claim about how a student truly feels. Most recently, while stress testing the app ahead of submission, I ran into a real Groq API rate limit after a long day of heavy usage, which caused one of my endpoints to fail with an unhandled error instead of a clean message, and tracking that down taught me a lot about building proper error handling and token limits into a production application rather than assuming external services will always respond the way you expect. Beyond any single technical problem, the biggest challenge overall was simply building the entire product alone, since every backend service, every frontend interaction, and every round of design polish came down to me working through it myself rather than splitting the work across a team.
Accomplishments that we're proud of
I am proud that Examly is a fully functional application rather than a static mockup or a narrow proof of concept, with a real backend, a real database of exam logic, and a real live voice and camera experience that someone can actually sit down and use today. I am especially proud of the fact that I built this entirely on my own at seventeen years old, handling the backend architecture, the AI integration, the computer vision, and the full frontend design myself over the course of this project. I am also proud of how far the user interface came through repeated rounds of iteration, since it started as a fairly plain functional layout and grew into something with real polish, clear analytics, thoughtful animations, and a coherent design system throughout every screen. Finally, I am proud of the ethical care I put into the behavioral tracking features, because building something that genuinely helps students without overselling what the technology can measure mattered to me just as much as making it work well technically.
What we learned
Working on Examly taught me a great deal about prompt engineering, particularly how to structure instructions to a language model so that its output is consistently usable inside a real application rather than something I have to constantly babysit. I learned how to bring real machine learning models like MediaPipe into a browser environment and combine that with a generative AI backend in a way where both systems were actually doing meaningful work rather than one being decorative. I also learned a surprising amount about audio synthesis through the Web Audio API, since making something as simple as a realistic cough or a page turning sound required understanding how noise, filtering, and amplitude envelopes actually behave. Perhaps most importantly, running into a real rate limit right before a deadline taught me that building something that works in a demo is different from building something that fails gracefully under real world constraints, and that lesson about defensive engineering and honest error handling is one I will carry into every project after this one.
What's next for Examly
I want to expand Examly well past the subjects it currently handles best, and I would also like to build a teacher facing view, where an educator could see aggregated struggle patterns across an entire class rather than just one student at a time, which would let Examly support actual classrooms instead of only individual learners. Longer term, I want to bring Examly to mobile so that practicing an oral exam is something a student can do anywhere, and I would love to explore real partnerships with schools who are looking for better ways to help students build confidence speaking about what they know, not just writing it down.
Log in or sign up for Devpost to join the conversation.