Inspiration
Students often think they understand material until exam day proves otherwise. Research shows that teaching is one of the most effective ways to learn — it forces you to organize knowledge, identify gaps, and articulate concepts clearly. I wanted to build a tool that makes this technique accessible and fun.
What it does
Smart Capy is an AI-powered "tutee" app. You upload your study notes (PDF or text), then teach a capybara character named Capy what you've learned through a chat interface. Capy asks follow-up questions, nods along, and reacts with cute animations and Animal Crossing-style voice sounds.
When you're done teaching, Capy takes a test based on what you taught — and you get a detailed report showing which topics Capy understood (meaning you explained well) and which ones it didn't (meaning you have gaps to review).
How I built it
- Next.js 16 + React 19 + TypeScript for the full-stack web app
- Tailwind CSS v4 for styling with a warm, approachable design system
- 3-agent AI architecture:
- Tutee agent (Claude Haiku 4.5) — the capybara that chats with you and asks questions
- Oracle agent (Gemini 2.0 Flash) — reads your source material and generates topic outlines + test questions
- Grader agent (Gemini 2.0 Flash) — answers test questions as the tutee would, then evaluates against the answer key
- Animalese voice synthesis — Animal Crossing-style gibberish sounds that play as Capy "speaks"
- Custom capybara character with state-based sprite animations (idle, thinking, test-taking, grade reactions)
Challenges I ran into
- Designing prompts that make the AI tutee ask genuinely helpful follow-up questions without being too leading or too passive
- Balancing cost across 3 AI agents — migrated from Claude Sonnet 4 to a Haiku + Gemini Flash combo to keep costs manageable
- Syncing Animalese audio playback with SSE streaming text without audio overlap or lag
- Making the capybara character feel alive with just static PNG sprites and CSS animations
What I learned
- Learned how to coordinate multiple AI models (Claude + Gemini) in a single app, handling their different output formats, strengths, and failure modes.
- SSE streaming for real-time chat with a character personality
- The Feynman technique really works — building this app about teaching made us better at explaining things
Built With
- animalese.js
- anthropic-ai/sdk
- css
- google/generative-ai
- next.js
- node.js
- react
- riffwave.js
- tailwind
- typescript
- unpdf
Log in or sign up for Devpost to join the conversation.