Skip to content

algo-aryan/Intelliview

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

25 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🧠 IntelliView – AI-Powered Interview Prep & Resume Analyzer

IntelliView is a backend-heavy, AI-powered job preparation platform that enables users to simulate mock interviews, get real-time feedback, and evaluate resumes through ATS scoring. Built with a robust Python backend using Flask and integrated with Gemini AI (Google Generative AI), IntelliView empowers users to improve their interview performance and optimize resumes for applicant tracking systems.


πŸš€ Live Deployment

Hosted on AWS EC2 with persistent server processes managed via tmux.
πŸ”— https://3d50-16-16-183-86.ngrok-free.app


🎯 Core Features

  • 🎀 Mock Interview Simulator
    Users can take AI-driven interviews with real-time guidance and feedback.

  • πŸ“„ ATS Resume Analyzer
    Upload a resume in PDF format to receive an ATS compatibility score with actionable suggestions.

  • πŸ“Š Performance History
    Track interview performance history with detailed breakdowns.

  • 🌐 Responsive UI
    Fully responsive, minimalistic frontend that works across all devices.


🧠 AI & NLP Capabilities

  • Gemini AI (Google Generative AI) is used to:

    • Generate mock interview questions
    • Evaluate user answers
    • Suggest improvements
  • PDF Parsing & Resume Scoring:

    • Extracts skills and content using PyMuPDF
    • Checks format, keyword match, and ATS compliance

πŸ“ Project Structure

IntelliView/
β”œβ”€β”€ web_app/
β”‚   β”œβ”€β”€ static/
β”‚   β”‚   β”œβ”€β”€ assets/                # Images and icons
β”‚   β”‚   └── css/                   # Custom stylesheets
β”‚   β”œβ”€β”€ templates/                # Rendered HTML templates via Flask
β”‚   β”‚   β”œβ”€β”€ ats_score.html
β”‚   β”‚   β”œβ”€β”€ history.html
β”‚   β”‚   β”œβ”€β”€ history_list.html
β”‚   β”‚   β”œβ”€β”€ index.html
β”‚   β”‚   β”œβ”€β”€ interview.html
β”‚   β”‚   β”œβ”€β”€ profile.html
β”‚   β”‚   β”œβ”€β”€ settings.html
β”‚   β”‚   └── take-interview.html
β”‚   β”œβ”€β”€ .env                      # Environment configuration
β”‚   β”œβ”€β”€ .dockerignore
β”‚   β”œβ”€β”€ .gitignore
β”‚   β”œβ”€β”€ main.py                   # Flask backend server (entry point)
β”‚   β”œβ”€β”€ requirements.txt          # Python dependencies
β”‚   β”œβ”€β”€ run.sh                    # Shell script to start the app
β”‚   β”œβ”€β”€ setup.sh                  # Setup script for deployment
β”‚   β”œβ”€β”€ runtime.txt

βš™οΈ Technologies Used

πŸ”§ Backend

  • Python 3
  • Flask – RESTful web framework
  • Gemini AI (Google Generative AI) – for generating interview feedback and questions
  • PyMuPDF – to extract text and structure from uploaded PDF resumes
  • dotenv – to manage secret keys and environment variables
  • Werkzeug – for request handling and file upload security

🌐 Frontend

  • HTML5, CSS3, Vanilla JavaScript
  • Dynamic rendering via Flask templating with .html files inside /templates
  • Clean, responsive layout with mobile support

πŸ–₯️ Deployment & DevOps

  • AWS EC2 – app hosting
  • tmux – background session management for running persistent backend
  • Shell scripting (run.sh, setup.sh) – automation for setup and server start
  • Git + GitHub – version control

πŸ› οΈ Local Development Setup

βœ… Prerequisites

  • Python 3.8+
  • Git
  • pip
  • Virtualenv (recommended)

πŸ“¦ Installation

# Clone the repo
git clone https://github.com/algo-aryan/intelliview.git
cd intelliview/project/web_app

# Create virtual environment
python3 -m venv .venv
source .venv/bin/activate

# Install dependencies
./setup.sh

# Set up environment variables
cp .env.example .env   # Then add Gemini API key and other secrets

# Run the Flask app
python3 web_app/main.py

πŸ–₯️ Deployment Guide (AWS EC2 + tmux)

# SSH into EC2
ssh ubuntu@<your-ec2-ip>

# Navigate to project directory
cd /home/ubuntu/intelliview/project/web_app

# Pull latest changes
git checkout fresh-start
git pull origin fresh-start

# Activate virtualenv
source .venv/bin/activate

# Install/update dependencies
./setup.sh

# Start app inside tmux
tmux new -s intelliview
python3 web_app/main.py

# Detach safely (CTRL + B, then D)

πŸ§ͺ Sample Environment Variables (.env)

GOOGLE_API_KEY=your_gemini_api_key_here
FLASK_SECRET_KEY=your_flask_secret
UPLOAD_FOLDER=uploads/

🧼 Shell Scripts

  • setup.sh: Initial setup, installs Python packages, sets up venv, and prepares environment.
  • run.sh: Executes main.py inside activated venv, used for starting the server post-deployment.

πŸ“¬ Contact

For queries or contributions, reach out via:

πŸ“§ aryan1509bansal@gmail.com πŸ”— LinkedIn


πŸ‘₯ Team Members


πŸ“ƒ License

This project is licensed under the MIT License.
See the full LICENSE for details.

About

An AI-powered web application that simulates mock interviews and analyzes resumes for ATS compatibility using Gemini AI and Flask.

Topics

Resources

License

Stars

2 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors