Skip to content

Latest commit

Β 

History

History
94 lines (74 loc) Β· 2.46 KB

File metadata and controls

94 lines (74 loc) Β· 2.46 KB

Mock Interview Practice Application

An AI-powered mock interview practice application where users can practice interview questions across multiple domains and receive instant AI-powered feedback.

Features

  • 🎯 10 Interview Domains: Java, Python, Data Science, Cloud, QA, HR, Electrical, JavaScript, React, System Design
  • πŸ€– AI-Powered Evaluation: Get instant feedback and scores on your answers
  • πŸ“Š Detailed Reports: Receive comprehensive reports with strengths, gaps, and recommendations
  • πŸ’Ύ No Database Required: Uses local file storage for easy setup
  • πŸ” User Authentication: JWT-based authentication system

Tech Stack

  • Frontend: React + Vite
  • Backend: Node.js + Express
  • Storage: Local JSON files
  • AI: Modular AI service (supports Gemini, OpenAI, or mock evaluation)

Quick Start

1. Clone the repository

git clone https://github.com/YOUR_USERNAME/mock-interview-app.git
cd mock-interview-app

2. Install dependencies

# Backend
cd backend
npm install

# Frontend
cd ../frontend
npm install

3. Start the servers

# Terminal 1 - Backend (port 5001)
cd backend
npm run dev

# Terminal 2 - Frontend (port 5173)
cd frontend
npm run dev

4. Open the app

Navigate to http://localhost:5173

Optional: Enable AI Evaluation

Add your API key to backend/.env:

AI_API_KEY=your-gemini-api-key
AI_PROVIDER=gemini

API Endpoints

Method Endpoint Description
POST /api/auth/register Register new user
POST /api/auth/login User login
GET /api/interview/domains Get available domains
GET /api/interview?domain=Java Get questions for domain
POST /api/interview/start Start interview session
POST /api/answer/submit Submit answer for evaluation
GET /api/report/generate/:id Generate interview report

Project Structure

mock-interview-app/
β”œβ”€β”€ backend/
β”‚   β”œβ”€β”€ routes/          # API routes
β”‚   β”œβ”€β”€ services/        # AI & storage services
β”‚   β”œβ”€β”€ middleware/      # Auth middleware
β”‚   β”œβ”€β”€ data/            # Sample questions
β”‚   └── server.js        # Express server
β”œβ”€β”€ frontend/
β”‚   β”œβ”€β”€ src/
β”‚   β”‚   β”œβ”€β”€ pages/       # React pages
β”‚   β”‚   β”œβ”€β”€ context/     # State management
β”‚   β”‚   └── services/    # API client
β”‚   └── index.html
└── README.md

License

MIT