An AI-powered mock interview practice application where users can practice interview questions across multiple domains and receive instant AI-powered feedback.
- π― 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
- Frontend: React + Vite
- Backend: Node.js + Express
- Storage: Local JSON files
- AI: Modular AI service (supports Gemini, OpenAI, or mock evaluation)
git clone https://github.com/YOUR_USERNAME/mock-interview-app.git
cd mock-interview-app# Backend
cd backend
npm install
# Frontend
cd ../frontend
npm install# Terminal 1 - Backend (port 5001)
cd backend
npm run dev
# Terminal 2 - Frontend (port 5173)
cd frontend
npm run devNavigate to http://localhost:5173
Add your API key to backend/.env:
AI_API_KEY=your-gemini-api-key
AI_PROVIDER=gemini| 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 |
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
MIT