When my friends and I were studying for standardized tests, we each had to scour the internet for practice problems and solution write-ups. We also wanted to work smarter, not harder, which meant tracking the kinds of problems we got wrong most often and targeting future efforts towards those areas. To do this manually and non-collaboratively was a pain, so I made an app.
Features
-
Upload practice from any source to be parsed and added to global database for all app users
-
Complete problems on mobile or the web in an interface that closely matches the look and feel of College Board's Bluebook but adds additional features to survey answer confidence and timing as you go
-
View insights about your performance (including accuracy, timing, confidence, and other metrics) automatically broken down and analyzed by question type and difficulty
-
Quick Practice mode selects the best problems for you to work on next based on your demonstrated performance and learning style
-
Gamify your consistency and progress with leaderboards and rewards for daily streaks and long-term goals
-
Post solution explanations to individual problems and comment on others with a neatly-integrated forum interface
-
Talk to an integrated AI chatbot trained to act as a pedagogically-sound Socratic tutor with full context on your learner profile and relevant subject matter
Engineering
The web app is built with Next.js in TypeScript, and the iOS app is built with Swift and SwiftUI. The unified backend is powered by Firebase, and the AI chatbot is powered by the OpenAI API. The database is Firestore with row-level security, but Cloud Functions are used for certain advanced tasks like problem parsing or learning analysis and personalization (all of which require big queries or relatively expensive processing).
Reflection
Minerva ended up working great with the friends and classmates who I shared it with (roughly 10% of my class). In the months of early access, I was even told it helped raise some friends' scores by over 180 points, which I found very rewarding. The project gave me a lot of experience working with AI and learning science, which I excitedly took forward to future work.
Screenshots



