Skip to content

Stennis1/ai-resume-analyzer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

6 Commits
Β 
Β 
Β 
Β 
Β 
Β 

AI Resume Analyzer

An AI-powered, full-stack web application that analyzes a resume against a job description and returns a match score, missing skills, and actionable improvement suggestions using a Large Language Model (LLM).

This project focuses on practical AI integration and real-world system design, rather than academic machine learning or model training.


πŸš€ Live Demo

  • Frontend: Coming soon
  • Backend API: Coming soon

Live links will be added once deployment is complete.


🧠 What This Application Does

Given:

  • A resume (plain text)
  • A job description

The system returns:

  • A match score (0–100)
  • A list of missing or weak skills
  • Actionable improvement suggestions
  • A concise final verdict from a recruiter’s perspective

This mirrors how modern AI-powered tools are used in hiring platforms, HR tech, and internal developer tooling.


πŸ—οΈ Architecture Overview

Frontend (Next.js)
        |
        |  HTTP (JSON)
        v
Backend API (FastAPI)
        |
        |  Prompt + Context
        v
Large Language Model (LLM)
  • The frontend handles user input and result presentation
  • The backend validates requests and orchestrates AI inference
  • The AI model performs structured analysis using prompt engineering

πŸ› οΈ Tech Stack

Frontend

  • Next.js (App Router)
  • TypeScript
  • Tailwind CSS
  • Fetch API

Backend

  • FastAPI
  • Python
  • Pydantic (request validation)
  • Uvicorn (ASGI server)

AI

  • Large Language Models via API
  • Structured prompt engineering with enforced JSON output

Deployment

  • Frontend: Vercel
  • Backend: Render

πŸ“‚ Project Structure (Monorepo)

ai-resume-analyzer/
β”œβ”€β”€ backend/
β”‚   β”œβ”€β”€ main.py
β”‚   β”œβ”€β”€ services/
β”‚   β”œβ”€β”€ requirements.txt
β”‚   └── .env.example
β”œβ”€β”€ frontend/
β”‚   └── (Next.js application)
β”œβ”€β”€ README.md
└── .gitignore

The frontend and backend are developed in a single repository and deployed independently.


πŸ” Key Engineering Decisions

Why FastAPI?

  • Strong request validation with Pydantic
  • Automatic interactive API documentation (/docs)
  • Excellent fit for AI-driven and data-oriented services
  • Minimal boilerplate with production-grade structure

Why Use LLM APIs Instead of Training a Model?

  • Reflects how AI is used in real-world products
  • Faster iteration and significantly lower operational cost
  • Focuses on AI system design, not model research

Why Enforce Structured JSON Output?

  • Predictable frontend rendering
  • Easier validation and error handling
  • Prevents malformed or ambiguous AI responses
  • Safer than free-form text generation

πŸ“¦ API Example

Endpoint

POST /analyze-resume

Request

{
  "resume": "Experienced backend engineer with Python and APIs...",
  "job_description": "Looking for a Python developer with cloud experience..."
}

Response

{
  "match_score": 78,
  "missing_skills": ["Docker", "AWS"],
  "suggestions": [
    "Add quantified achievements",
    "Highlight cloud-related projects"
  ],
  "verdict": "Strong candidate with minor gaps"
}

πŸ” Environment Variables

The backend requires environment variables for secure configuration.

Example:

OPENAI_API_KEY=your_api_key_here

Environment files are excluded from version control.


πŸ§ͺ Running Locally

Backend

cd backend
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt
uvicorn main:app --reload

Visit:

  • http://127.0.0.1:8000 β€” API root
  • http://127.0.0.1:8000/docs β€” Interactive API documentation

πŸ“ˆ Future Enhancements (Non-Breaking)

The current architecture supports future extensions such as:

  • PDF resume upload
  • Resume history and comparisons
  • Retrieval-Augmented Generation (RAG)
  • Authentication
  • Analytics and feedback tracking

These additions can be introduced without rewriting the core system.


πŸ“œ License

MIT

About

Resources

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors