DEV Community

MN Malathesh
MN Malathesh

Posted on

VivaMate: A Local AI Interview Partner I Built for a Friend

Hacktoberfest Weekend Challenge: Build for a Friend Submission 🤝

This is a submission for the Hacktoberfest Weekend Challenge: Build for a Friend

What I Built

[Friend's name] has campus placements coming up and kept saying the same thing: "I know the answers, I just freeze when someone asks." Reading notes doesn't fix that. Practicing out loud with someone who pushes back does.

So I built VivaMate, an AI interview partner that:

  • Runs mock, HR, DSA and project deep-dive interviews, one question at a time
  • Reads [Friend's name]'s resume PDF and GitHub repos, so the questions are about their projects
  • Scores every answer for correctness and clarity, then tracks weak topics, streaks and a readiness score
  • Takes spoken answers through the mic, because freezing happens out loud
  • Has a 60-second Pressure Mode that simulates a real interview
  • Exports a PDF session report with strengths, weaknesses and revision topics

Demo

🔗 Live: https://vivamate-b7th.onrender.com

[Add a screenshot or short video of a mock interview with the readiness score visible.]

Code

GitHub logo maltheshhh / VivaMate

Ai based Mate for ideal viva and interviews

VivaMate

Your AI-powered companion for viva, interview, and placement preparation.

VivaMate is a local-first AI interview preparation assistant designed to help students practice technical interviews, HR rounds, DSA questions, project discussions, and resume-based interviews.

It combines conversational AI, voice input, personalized candidate context, performance scoring, readiness tracking, weak-topic detection, and downloadable reports into a single lightweight web application.

The application can run entirely locally using Ollama, making it possible to practice without sending your conversations to a cloud AI provider.


Features

AI Interview Modes

VivaMate provides multiple focused preparation modes:

  • Mock Interview — Practice realistic interview questions one at a time.
  • Explain Mode — Learn concepts you struggled with through simple explanations and examples.
  • HR Round — Practice behavioral and situational questions using STAR-style feedback.
  • DSA Round — Practice data structures and algorithms questions, including approach and complexity.
  • Project Deep-Dive — Discuss your GitHub projects, design decisions, trade-offs, bugs…

How I Built It

The whole stack runs on open pieces:

  • LLM: Ollama running qwen2.5:7b, an open-weight model, with an optional OpenAI-compatible endpoint set through .env
  • Speech-to-text: faster-whisper, running locally
  • Backend: FastAPI, SQLite and streamed responses
  • Frontend: vanilla HTML/CSS/JS with the MediaRecorder and Speech Synthesis APIs, no framework and no CDN
  • Documents: pypdf to read resumes, ReportLab to write reports
  • Evaluation: after each answer, the model returns a structured {score, clarity, topic} JSON. That feeds SQLite and drives weak-topic detection, readiness and the /weak and /quiz commands.

Why Does Open Innovation Matter?

A mock interview is personal: your resume, your mistakes, your nervous half-answers. I didn't want a student's practice sessions sitting on a server they don't control.

Open models gave me what a closed API wouldn't:

  • Privacy: resume, answers and scores stay on the user's machine
  • Offline use: after the first model download, it works without internet
  • Zero running cost: no per-token bill, which matters for a student

  • Swappable brain: one line in .env switches the model or provider

My Agent Session

[Optional: embed or link your DevRelay session.]

Prize Categories

  • Best Use of Render: the live demo is hosted on Render.

My friend Arun has exams starting tomorrow. He knows the material, but reading notes doesn't prepare you for being questioned out loud, where you have to explain, defend and think under pressure.

So I built VivaMate, an AI interview and viva partner for him. It:

  • Asks questions one at a time and reacts to what he actually says
  • Reads his resume PDF and GitHub repos, so project questions are about his work
  • Scores every answer for correctness and clarity, then tracks weak topics, streaks and a readiness score
  • Takes spoken answers through the mic
  • Has a 60-second Pressure Mode to simulate exam-room stress
  • Explains concepts he gets wrong, then exports a PDF report of what to revise

devchallenge #weekendchallenge #hf26challenge

Top comments (0)