Samjha — Teach it back in your own language
A voice-first AI study buddy for Indian students. Paste a chapter, PDF, or YouTube lecture, then teach it back to Chotu — our curious animated AI junior — in whatever language you actually think in (Hinglish, Hindi, Tamil, Bengali, Marathi, Telugu, or English). Chotu listens, interrupts with "ruko ruko didi, but why…?", and produces a colour-coded Gap Map plus spaced-repetition flashcards targeted only at your weak spots.
Built for NextGenHacks by Aryan Choudhary (aryancta@gmail.com).
Why we built this
Every Feynman-style study app we found is English-only and gives a dry clarity score. Meanwhile, first-generation Hindi-, Tamil-, Bengali-medium students burn mental energy just translating their textbooks — research shows Indic-language instruction gives 22.7% higher comprehension and 17.5% better retention. We wanted the first voice-first study app that actually lets Indian students explain the chapter back in Hinglish, and turns that into something beautiful and actionable.
What it does
Samjha takes any PDF, YouTube lecture, or pasted chapter, extracts 3-5 concepts worth teaching back, then puts the student in "teaching mode". They hold the mic and explain each concept out loud in Hinglish, Hindi, Tamil, Bengali, Marathi, Telugu, or English. Our curious AI junior Chotu listens, interrupts naturally with "but why, didi?" in the same code-mix, then produces a colour-coded Gap Map and auto-generates spaced-repetition flashcards targeting only the red and yellow zones. First-gen learners finally get an active-recall tool that meets them where they actually think.
How we built it
Next.js 14 with the app router and standalone output for a clean Docker deploy. Framer Motion animates a hand-built 140-line SVG mascot (Chotu) with six moods so he feels alive without pulling in a Lottie runtime. Tailwind + a custom saffron/brand-purple palette keeps the UI cohesive. The backend is one Next.js route handler that either calls Gemini 2.5 Flash (with the user's BYO key forwarded as a request header) or falls back to a deterministic local extractor — so demos never break. The in-browser interruption engine uses language-specific templates that do keyword-probing on the exact point the student glossed over.
Challenges
Getting Gemini to stay in Hinglish code-switching mode without silently drifting into pure Hindi — we solved this with strict JSON schema and explicit per-language instructions. The second hard problem was graceful degradation: webkitSpeechRecognition is unreliable for Indic languages, so we built a local template engine that makes Chotu feel smart even when the ASR misses half the transcript, plus a sample-explanation fallback so the demo story always lands.
Accomplishments
Chotu is genuinely lovable — head-tilt, raised-hand gesture, blinking eyes, six moods, all in pure SVG. The Gap Map clarity ring + expandable concept tree + per-concept clarity bar is the visualization every Feynman app should have had years ago. And the whole app runs with zero API keys: every route, every button, every state is populated by seed data, so judges can see the full story in 60 seconds without signing up for anything.
What we learned
Indic NLP is a last-mile problem, not a research problem — the hard part is making the UX forgiving when ASR/LLMs stumble, not picking the right model. Also, polished SVG animation beats fancy Lottie packs for hackathons: tiny bundle, infinite control, looks more "designed". Finally, seeded data and graceful fallback are the difference between a demo that lands and a demo that crashes.
What's next
1) Plug in Bhashini TTS voices per region so Chotu actually speaks Tamil in Tamil Nadu; 2) Whisper-on-device for better Indic ASR; 3) Parent/teacher dashboard for low-literacy parents to see what their child actually understood; 4) Classroom mode — 30 students teach in parallel, teacher sees class-wide Gap Map; 5) Mobile app with streak + shareable explainer cards optimized for WhatsApp virality.
Built with
Next.js 14, TypeScript, Tailwind CSS, Framer Motion, React 18, Lucide React, Gemini 2.5 Flash, Web Speech API, Bhashini, Groq, Docker, Vercel.
Built With
- bhashini
- docker
- framer-motion
- gemini-2.5-flash
- groq
- lucide-react
- next.js-14
- react-18
- tailwindcss
- typescript
- vercel
- web-speech-api
Log in or sign up for Devpost to join the conversation.