Inspiration
As students, we know how stressful exams can be, especially when you're unsure whether you're actually prepared. We wanted to help students better understand their knowledge, build confidence, and manage test anxiety.
In the current age of GPT wrapper study tools and AI tutors, I think it's fair to say a majority of it is laziness and cognitive offloading. We wanted to swap the traditional roles of students using AI as a professor, and rather the AI as a student.
We chose Richard Feynman's studying framework, which involves active recall and simplifying things in your own words. These are vital skills that not only improve information retention, but also find your flaws and provide you the unique ability to explain things in layman terms.
What it does
feynman.ai helps students prepare for exams by teaching Alex, an AI classmate that has one too many questions. Students complete assessments, explain concepts through voice or text, and track their improvement. The platform also compares confidence with actual performance and uses Presage to explore heart rate patterns during studying.
How we built it
We built feynman.ai using React, TypeScript, and Vite for the frontend, with a Node.js backend managing our APIs and study sessions. We integrated Google Gemini to analyze uploaded study materials, generate personalized assessments, grade responses, and identify knowledge gaps. Gemini also powers text conversations with Alex, while ElevenLabs enables real-time voice interactions, allowing students to explain concepts naturally. For physiological monitoring, we combined Presage SmartSpectra with MediaPipe to process webcam data, track facial positioning, and estimate heart rate and breathing patterns during study sessions. We also developed a confidence tracking system that compares students' self-reported confidence with their assessment performance, alongside personalized feedback and downloadable review sheets. Supabase handles user authentication and saved study sessions, while Docker and Railway support deployment of the application and backend.
Challenges we ran into
Our biggest challenge was integrating Presage, particularly dealing with API authentication, camera calibration, and inconsistent readings. We also encountered Gemini API rate limits, deployment issues, and challenges coordinating multiple services into one smooth experience.
Presage was easily our biggest headache. We underestimated how computationally demanding SmartSpectra's physiological processing would be. While the integration worked locally, our Railway deployment was limited to 1 GB of RAM, causing the server to run out of memory during camera monitoring. We spent a significant amount of time debugging the integration before realizing that the hosting environment itself was a major bottleneck. Getting everything working locally was one challenge, making it reliable in production was another.
Accomplishments that we're proud of
We built a complete learning experience combining AI-powered assessments, interactive teaching, confidence tracking, and personalized study guides. We're especially proud of integrating voice AI and experimental physiological monitoring to explore exam readiness beyond academic performance alone.
What we learned
We learned how to build and deploy a full-stack application, integrate multiple AI services, troubleshoot APIs, and manage real-time data. We also learned the importance of designing technology around a clear problem rather than simply adding features. The biggest thing we learned was how important good UX design is. After tweaking our frontend in the lens of someone brand new to our app, it became much more fleshed out.
What's next for feynman.ai
We plan to add timed exam simulations, adaptive practice, long-term confidence tracking, and more reliable physiological insights. Our goal is to help students feel more prepared and less uncertain before exams.
Log in or sign up for Devpost to join the conversation.