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