Skip to content

Latest commit

Β 

History

16 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🎯 InterviewLens AI

AI-Powered Interview Failure Analyzer & Personalized Interview Coach

InterviewLens AI is a full-stack MERN application that analyzes interview performance using AI. It compares a candidate's Resume, Job Description, and Interview Responses to identify weaknesses, missing skills, recruiter expectations, and provides an actionable improvement roadmap.

Docker

Nginx

React

Node.js

MongoDB

License


πŸš€ Live Demo

🌐 Frontend: https://interviewlens-ai.netlify.app/

πŸ’» Backend API: https://interviewlens-ai.onrender.com

πŸ“¦ Dockerized: Multi-stage Docker setup for frontend (Nginx) and backend (Node.js + Express) using Docker Compose.


⭐ Key Highlights

  • πŸ€– AI-powered Interview Performance Analyzer
  • πŸ“„ Resume vs Job Description Skill Gap Analysis
  • πŸ“Š Analytics Dashboard with Performance Tracking
  • πŸ“š AI-generated Practice Questions & Model Answers
  • πŸ—ΊοΈ Personalized 7-Day Improvement Roadmap
  • πŸ” JWT Authentication & Email OTP Recovery
  • πŸ“‘ Downloadable PDF Interview Reports
  • 🐳 Fully Dockerized (Docker + Docker Compose + Nginx)
  • ☁️ Deployed using Netlify, Render & MongoDB Atlas

Screenshots

image image image

πŸ“Œ Problem Statement

Many candidates fail interviews without understanding why they were rejected.

InterviewLens AI bridges this gap by providing:

  • Resume vs Job Description analysis
  • Interview answer evaluation
  • Recruiter-style feedback
  • AI-generated practice questions
  • Personalized improvement roadmap

✨ Features

πŸ” Authentication

  • JWT Authentication
  • Secure Login & Signup
  • Forgot Password via Email OTP
  • Protected Routes

πŸ“„ Resume Processing

  • Upload Resume (PDF)
  • Paste Resume Manually
  • Resume Parsing
  • Resume Storage

πŸ’Ό Interview Analysis

Analyze interviews using:

  • Resume
  • Job Description
  • Questions & Answers

AI generates:

  • βœ… Interview Readiness Score
  • βœ… Pass Probability
  • βœ… Strengths
  • βœ… Weaknesses
  • βœ… Missing Skills
  • βœ… Interview Mistakes
  • βœ… Recruiter Insights
  • βœ… Personalized Feedback

πŸ—ΊοΈ 7-Day Improvement Roadmap

Personalized roadmap generated by AI:

  • Day 1
  • Day 2
  • Day 3
  • Day 4
  • Day 5
  • Day 6
  • Day 7

🎯 AI Practice Questions

Based on interview performance, InterviewLens AI generates:

  • Personalized Interview Questions
  • AI Model Answers
  • Practice Suggestions

πŸ“ˆ Analytics Dashboard

Track interview performance over time.

Includes:

  • Total Interviews
  • Average Score
  • Best Score
  • Improvement Percentage
  • Score Trend Graph

πŸ“š Interview History

Every interview is saved automatically.

Features include:

  • View Previous Analyses
  • Generate AI Answers Again
  • Download PDF Report
  • Delete History
  • Performance Tracking

πŸ“„ PDF Report Generation

Download complete interview reports containing:

  • Interview Score
  • Probability
  • Strengths
  • Weaknesses
  • Missing Skills
  • Mistakes
  • Roadmap
  • Practice Questions

πŸ‘€ Profile Dashboard

Displays:

  • User Details
  • Total Interviews
  • Average Score
  • Best Score
  • Overall Improvement

πŸ“± Responsive Design

Fully responsive across:

  • Desktop
  • Tablet
  • Mobile

Built using Tailwind CSS.


πŸ› οΈ Tech Stack

🎨Frontend

  • React.js
  • React Router DOM
  • Tailwind CSS
  • Axios
  • Recharts
  • React Icons
  • React Toastify

βš™οΈBackend

  • Node.js
  • Express.js
  • JWT Authentication
  • bcrypt.js
  • Multer
  • Nodemailer
  • Groq API
  • Docker
  • Docker Compose

πŸ—„οΈDatabase

  • MongoDB
  • Mongoose

🧠AI Integration

  • Groq API (Llama Model)

Used for:

  • Interview Analysis
  • Feedback Generation
  • Skill Gap Detection
  • Roadmap Generation
  • Practice Questions
  • Model Answers

🐳 DevOps

  • Docker
  • Docker Compose
  • Nginx

☁️ Deployment

Frontend:

  • Netlify

Backend:

  • Render

Database:

  • MongoDB Atlas

Containerization:

  • Docker
  • Docker Compose

Web Server:

  • Nginx

πŸ“‚ Project Structure

InterviewLens-AI/
β”‚
β”œβ”€β”€ client
β”‚   β”œβ”€β”€ Dockerfile
β”‚   β”œβ”€β”€ nginx.conf
β”‚   β”œβ”€β”€ src/
β”‚   β”‚   β”œβ”€β”€ components/
β”‚   β”‚   β”œβ”€β”€ pages/
β”‚   β”‚   β”œβ”€β”€ utils/
β”‚   β”‚   β”œβ”€β”€ App.jsx
β”‚   β”‚   └── main.jsx
β”‚
β”œβ”€β”€ server
β”‚   β”œβ”€β”€ Dockerfile
β”‚   β”œβ”€β”€ controllers/
β”‚   β”œβ”€β”€ routes/
β”‚   β”œβ”€β”€ middleware/
β”‚   β”œβ”€β”€ models/
β”‚   β”œβ”€β”€ utils/
β”‚   β”œβ”€β”€ config/
β”‚   └── server.js
β”‚
β”œβ”€β”€ docker-compose.yml
β”‚
└── README.md

πŸ—οΈ Architecture

        React + Tailwind CSS
                 β”‚
                 β–Ό
          Axios REST API
                 β”‚
                 β–Ό
     Express.js + Node.js
                 β”‚
      β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
      β–Ό                     β–Ό
 MongoDB Atlas         Groq AI API
      β”‚                     β”‚
      β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                 β–Ό
      AI Interview Analysis

πŸ”Œ API Overview

Method Endpoint Description
POST /api/auth/signup Register User
POST /api/auth/login Login User
POST /api/analyze Analyze Interview
POST /api/upload-resume Upload Resume
GET /api/history Interview History
GET /api/analytics Analytics Dashboard

βš™οΈ Installation

Clone Repository

git clone https://github.com/aakanshimalik/InterviewLens-AI.git

cd interviewlens-ai

Install Frontend

cd client

npm install

npm run dev

Install Backend

cd server

npm install

npm run dev

🐳 Docker Support

InterviewLens AI is fully containerized for consistent local development and production deployment.

Run using Docker

docker compose up --build

Application URLs:

Service URL
Frontend http://localhost:5173
Backend http://localhost:5000

Stop containers:

docker compose down

Docker Features

  • Multi-stage frontend build
  • Nginx production server
  • Backend container with Express.js
  • Docker Compose orchestration
  • Environment variable support

πŸ”‘ Environment Variables

Create a .env file inside the server folder.

PORT=5000

MONGO_URI=YOUR_MONGODB_URL

JWT_SECRET=YOUR_SECRET_KEY

GROQ_API_KEY=YOUR_GROQ_KEY

EMAIL_USER=YOUR_EMAIL

EMAIL_PASS=YOUR_APP_PASSWORD

Demo Credentials

Create your own account using Signup.


πŸ“Š Future Improvements

  • AI Mock Interview (Voice)
  • Speech Analysis
  • Facial Emotion Detection
  • ATS Resume Scoring
  • Recruiter Dashboard
  • Company-wise Interview Preparation
  • Multi-language Support
  • AI Career Advisor
  • Interview Performance Comparison

πŸŽ“ Key Learning Outcomes

  • MERN Stack Architecture
  • RESTful API Design
  • JWT Authentication & Authorization
  • AI API Integration
  • Resume Parsing
  • MongoDB Data Modeling
  • Docker & Containerization
  • Production Deployment
  • Responsive UI Development
  • Analytics Dashboard Design
  • PDF Report Generation

πŸ‘©β€πŸ’» Author

Aakanshi Malik

πŸ“§ Email: aakanshimalik54@gmail.com

πŸ’Ό LinkedIn: https://www.linkedin.com/in/aakanshi-malik-996738298

πŸ’» GitHub: https://github.com/aakanshimalik


πŸ“„ License

This project is licensed under the MIT License.


⭐ If you like this project...

Give this repository a ⭐ Star and feel free to fork it!

Packages

Contributors

Languages