🌟 Live Demo: https://interview-prep-1-5dz1.onrender.com
An intelligent, full-stack application designed to help job seekers prepare for interviews by leveraging the power of Generative AI. The platform analyzes resumes against job descriptions to generate tailored ATS-friendly resumes, comprehensive interview reports, technical/behavioral questions, and personalized preparation plans.
- Resume Analysis: Upload a PDF resume and a target job description to get a detailed match score.
- ATS Resume Tailoring: Generate a cleanly formatted, ATS-optimized HTML/PDF resume tailored specifically to the job description you are targeting.
- AI Mock Interview Generation: Receive a customized interview report containing:
- Technical & Behavioral Questions
- Ideal Answers & Interviewer Intentions
- Identified Skill Gaps and their Severities
- A structured Day-by-Day Preparation Plan
- Robust Architecture: Powered by Google's latest Gemini AI models (
gemini-2.5-flash-lite), featuring automatic retry loops and fallback mechanisms to ensure high availability. - Secure Authentication: User authentication and protected routes to manage personal interview reports securely.
- Framework: React.js
- Styling: SCSS (with a responsive, modern dark/light mode UI)
- Routing: React Router
- Server: Node.js with Express.js
- Database: MongoDB (via Mongoose)
- AI Integration: Google Generative AI SDK (
@google/genai) - PDF Processing:
pdf-parse(v2),puppeteer(for HTML-to-PDF conversion) - File Uploads: Multer
- Node.js (v18 or higher recommended)
- MongoDB running locally or a MongoDB Atlas URI
- Google Gemini API Key
git clone https://github.com/Jatzz26/Interview-Prep.git
cd Interview-Prepcd Backend
npm installCreate a .env file in the Backend directory:
PORT=3000
MONGODB_URI=your_mongodb_connection_string
GOOGLE_API_KEY=your_gemini_api_key
JWT_SECRET=your_jwt_secretStart the backend server:
npm run devcd ../Frontend
npm installCreate a .env file in the Frontend directory (if required) and configure your backend API URL.
Start the frontend development server:
npm run devThe platform utilizes Google's Gemini 2.5 Flash Lite model. To ensure strict JSON formatting and avoid schema-parsing errors, the backend utilizes explicit structured-prompt engineering. A built-in automatic retry mechanism intercepts 503 High Demand errors to provide a seamless, robust user experience even during peak API traffic times.
This project is open-source and available under the MIT License.