Inspiration
Traditional study tools test what you can write or recognize, but real vivas test whether you can think, explain, and defend your answer aloud. We built Viva to simulate that pressure and turn speaking into an active learning loop.
What it does
Viva asks conceptual questions using text-to-speech, listens to your spoken answer, transcribes it, and evaluates it using an LLM-based rubric covering technical accuracy, missing concepts, confidence, and clarity. It also calculates words-per-minute and filler-word rate locally, then asks a targeted Socratic follow-up based on your biggest knowledge gap.
How we built it
Viva is built with React Native + Expo using a modular architecture:
- Audio: native TTS/STT through Expo modules
- AI Engine: Gemini → Groq → local mock fallback
- Evaluation: structured JSON rubric
- Billing: RevenueCat Test Store with official RevenueCatUI
- Routing: Expo Router
- Testing: Jest
- CI: GitHub Actions
The app runs in demo mode with zero API keys and zero backend cost.
Challenges we ran into
The biggest challenge was making the experience feel like an actual oral examiner rather than a chatbot. We had to separate objective delivery metrics from subjective LLM grading, enforce structured outputs, handle speech recognition across platforms, and keep the audio, grading, and billing modules isolated.
Accomplishments that we're proud of
We built a complete oral-exam loop: Ask → Speak → Transcribe → Evaluate → Identify gaps → Follow up. We also implemented a zero-cost demo mode, provider fallback, local delivery analytics, custom syllabus support for Pro, and RevenueCat's official paywall flow without building a custom billing UI.
What we learned
We learned that AI evaluation becomes significantly more reliable when the model has a strict rubric and structured output instead of simply being asked to “grade” an answer. We also learned that keeping deterministic metrics local makes the system more trustworthy and easier to debug.
What's next for Viva
Next, we want to add long-term progress tracking, deeper syllabus personalization, adaptive difficulty, richer speaking analytics, interview-specific modes, and personalized revision plans based on recurring knowledge gaps.
Log in or sign up for Devpost to join the conversation.