Inspiration Standardized tests like the SAT can make or break college opportunities — but quality test prep is expensive and out of reach for many students in underserved schools. We wanted to build something that gives every student access to a tutor that actually adapts to them, not a one-size-fits-all prep book. With powerful open AI models now accessible, we saw a chance to put a real adaptive tutor in every student's pocket, for free.
What it does AceSAT is an AI-powered SAT tutor that:
Diagnoses a student's strengths and weaknesses through a 3-question onboarding quiz Creates a personalized 4-step study plan targeting weak categories using NVIDIA NIM (nemotron-3-super-120b-a12b) Adapts question difficulty in real time based on right/wrong answers Tracks progress locally — scores, weak areas, and attempt history — using a Room database Navigates the curriculum automatically, always steering the student toward their next weak spot It's not just a quiz app — it actively steers the student's learning path like a real tutor would.
How we built it Android app: Kotlin + Jetpack Compose for the UI, Room for local persistence, Retrofit/OkHttp for networking Backend security proxy: Node.js + Express, so API keys never touch the client — it forwards requests securely to NVIDIA NIM and includes an offline fallback mode with mock questions when no key is present Web simulator: A single-page HTML/CSS/JS app that mirrors the Compose client, so judges and users can try the full experience instantly in a browser without installing an APK Design system: A custom Neobrutalist theme — cream backgrounds, thick black borders, flat offset shadows, and bold Space Grotesk typography — to make the app feel distinct, playful, and confident CI/CD: GitHub Actions pipeline that builds and releases the APK automatically on every push to main Challenges we ran into Balancing a fully custom Neobrutalist UI (thick borders, flat shadows, press effects) with Jetpack Compose's default Material theming took real trial and error to get it feeling native and responsive. Designing the adaptive logic so difficulty scaling felt genuinely responsive rather than arbitrary — tuning how quickly the agent should escalate or ease off based on performance. Making the app usable without an API key was important for accessibility and demo reliability, so we built a full offline fallback engine into the backend proxy. Keeping API keys secure while still making local testing and web simulation frictionless for judges. Accomplishments that we're proud of Built a genuinely adaptive AI agent — not just a static quiz — that diagnoses, plans, and adjusts in real time. Shipped three fully working pieces (Android app, backend proxy, and web simulator) that all interoperate. Created a distinctive, cohesive Neobrutalist design system from scratch rather than relying on default UI kits. Set up automated CI/CD so the APK builds and releases without manual steps. Made the whole experience accessible offline, so the app works even without an API key. What we learned How to design and prompt an LLM (NVIDIA NIM / nemotron) to reliably generate structured, actionable study plans rather than generic advice. The importance of building an offline-first fallback for demo reliability and accessibility. How to architect a secure proxy layer so API keys never touch client devices. Practical lessons in Jetpack Compose theming to implement a fully custom, non-Material design language. What's next for AceSAT Expand the diagnostic quiz beyond 3 questions for finer-grained weak-area detection. Add spaced repetition so previously mastered topics are periodically reinforced. Introduce peer/classroom features so teachers can track student progress across a whole class. Support additional standardized tests (ACT, PSAT) using the same adaptive agent architecture. Move from local Room-only storage to optional cloud sync so students can pick up progress across devices.
Built With
- android-studio
- kotlin

Log in or sign up for Devpost to join the conversation.