Skip to content

jonathanmui4/InterviewGym

Repository files navigation

Interview Gym 💪

The place to get reps and sets in to prepare for your next tech interview.


📖 Table of Contents

🔨 Tech Stack

🤩 Features

  • Authentication: Sign up and sign in using the traditional email and password, your Google account or Github account.
  • Create Interviews: Easily generate job interviews to practice on with Vapi voice assistant and Google Gemini
  • Get feedback from AI: Take the interview with the AI voice agent and receive instant feedback!
  • Interview Page: Conduct interviews with real-time feedback and detailed transcripts, almost as if you're on Microsoft teams.
  • Dashboard: Manage and track your interviews and interviews created by other users.

Set Up Development Environment

This is a Next.js project bootstrapped with create-next-app.

Create firebase project

  • Setup Authentication and firestore database
  • Download admin sdk private keys

Create Vapi Assistant

  • Setup Assistant and workflow (for interview generation)
  • Current workflow:
    • Hello, {{ username }}! Let's prepare your interview. I'll ask you a few questions and generate a perfect interview just for you. Are you ready?
    • Collect role, type (technical or behavioural), level, amount (as in no of questions), techstack
    • Make post request with collected data
    • Say interview has been generated and thank user for call.

Setup .env file

Ensure you have the following information

NEXT_PUBLIC_VAPI_WEB_TOKEN=
NEXT_PUBLIC_VAPI_WORKFLOW_ID=

GOOGLE_GENERATIVE_AI_API_KEY=

NEXT_PUBLIC_BASE_URL=

NEXT_PUBLIC_FIREBASE_API_KEY=
NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN=
NEXT_PUBLIC_FIREBASE_PROJECT_ID=
NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET=
NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=
NEXT_PUBLIC_FIREBASE_APP_ID=
NEXT_PUBLIC_FIREBASE_MEASUREMENT_ID=

FIREBASE_PROJECT_ID=
FIREBASE_CLIENT_EMAIL=
FIREBASE_PRIVATE_KEY=

Getting Started

First, install packages (ensure running on node v22.14):

npm install

Then, run the development server:

npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun dev

Open http://localhost:3000 with your browser to see the result.

Credits

JS Mastery's online tutorial here

About

An AI web platform for users to practice tech job interviews and get instant feedback

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors