Inspiration

One of us teaches coding to elementary students. Every class, the same thing happens: one kid gets stuck on a bug, and while the teacher helps them, other kids sit stuck too, quietly waiting their turn. Young kids often don't ask for help. They just stop. In the Odyssey, Odysseus spent seven years stranded on Calypso's island with no way to call for help. We wanted to make sure no student gets stranded.

What it does

MentorThena is an AI teaching assistant for beginner coding classes, named after Athena, who disguised herself as Mentor to guide heroes with hints, never by fighting their battles.

  • Argus, the watcher, notices when a student is stuck: idle too long, typing and deleting, the same error 3 times, or wrong output 3 times
  • Athena, powered by Gemini, gives a kid-level hint that gets more specific each time, but never gives the answer
  • Siren Guard checks every hint and blocks any that would give the answer away
  • The Sea Map shows the teacher every student as a ship: green when sailing, yellow when getting hints, red when they need the teacher, and docked at Ithaca when the task is done
  • Tiresias spots class-wide patterns, like "4 students are missing colons," so the teacher can do a 1-minute mini lesson

Unlike tools that wait for a student to click "hint," MentorThena notices the quiet kids who never ask.

How we built it

  • Frontend: React + Vite, CodeMirror for the editor, and Pyodide to run student Python in the browser (student code never runs on our server)
  • Backend: Flask REST API with rule-based stuck detection
  • AI: Gemini for hints, Siren Guard checks, teacher tips, and embeddings
  • Database: MongoDB Atlas for students, code snapshots, and hints, with a TTL index that auto-deletes snapshots after 7 days for privacy, aggregation pipelines for class insights, and Vector Search for the Ship's Log (reusing hints that helped with similar bugs)

Challenges we ran into

  • Detecting "stuck" without bothering students who are just thinking: we tuned thresholds and added a 45-second cooldown between hints
  • Getting Gemini to write hints an 8-year-old understands without giving away the answer
  • Splitting the work cleanly between two people, using stubs and an agreed API contract so we could build at the same time

Accomplishments that we're proud of

  • A full loop from stuck student to hint to teacher alert, working end to end
  • Hints that guide instead of solve
  • A design that protects kids' privacy: no open AI chat, first names only, and student data auto-deleted

What we learned

  • How to design an API contract and build against stubs as a team
  • MongoDB TTL indexes, aggregation, and vector search
  • Prompting for a specific reading level and adding guardrails to AI output

What's next for MentorThena

  • Testing it in a real elementary classroom
  • More languages beyond Python, like JavaScript and p5.js
  • Hosting it so teachers can use it right away

Built With

Share this project:

Updates

Submission history