AI Resume Analyzer

AI Resume Analyzer is a Flask-based web application that lets users upload a PDF or DOCX resume, extract its text, and receive AI-powered feedback such as an ATS-style score, summary, detected skills, missing skills, strengths, weaknesses, and suggestions.

Features

  • Upload resume files in PDF or DOCX format
  • Extract text from uploaded documents
  • Analyze resume content with Gemini-based AI processing
  • Display structured feedback in the browser

Tech Stack

  • Flask
  • Flask CORS
  • Python-dotenv
  • PyMuPDF
  • python-docx
  • Google Generative AI
  • HTML/CSS/JavaScript frontend

Prerequisites

  • Python 3.10 or newer
  • pip
  • A Gemini API key

Setup

  1. Clone the repository and open the project folder.
  2. Create and activate a virtual environment: bash python -m venv .venv .venv\Scripts\activate
  3. Install dependencies: bash pip install -r requirements.txt
  4. Create a .env file in the project root with your Gemini API key: env GEMINI_API_KEY=your_api_key_here
  5. Start the Flask app: bash python backend/app.py
  6. Open the app in your browser at: text http://127.0.0.1:5000/

Project Structure

  • backend/ contains the Flask app and API routes
  • frontend/ contains the HTML, CSS, and JavaScript UI
  • AI/ contains the AI integration modules
  • resume_parser/ contains the document parsing logic

Notes

  • If the Gemini API key is missing or invalid, the app will still return a fallback analysis so the UI remains usable.
  • For production deployments, use a production WSGI server instead of Flask's built-in development server.

Built With

Share this project:

Updates