Skip to content

Kd1880/Internify

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

12 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🌟 Internify – AI-Powered Resume β†’ Job Matching System

Internify is an AI/ML-powered system that analyzes resumes, extracts skills, and recommends the most relevant job roles using machine learning techniques such as TF-IDF, Logistic Regression, and KMeans clustering.

This repository contains:

  • 🧠 Flask Backend API
  • 🎨 Streamlit Frontend
  • πŸ›’ SQLite Database Support
  • πŸ“„ PDF Parsing + NLP
  • πŸ“Š Job Matching Analytics

πŸš€ Features

πŸ” AI Resume Understanding

  • PDF resume parsing
  • Text extraction using NLP
  • Skill & keyword detection
  • TF-IDF vectorization

πŸ€– Machine Learning Pipeline

  • Resume vectorization
  • Logistic Regression scoring
  • KMeans clustering
  • Weighted final score
  • Top job recommendations

🧩 Backend API (Flask)

  • GET / – API health check
  • POST /signup
  • POST /login
  • POST /upload_resume
  • GET /matches?user_id=

πŸ–₯️ Frontend (Streamlit)

  • Resume upload UI
  • Job recommendations
  • Score visualization (Pie chart + Histogram)
  • User login + history

πŸ“‚ Project Structure

Internify/ β”‚ β”œβ”€β”€ backend/ β”‚ β”œβ”€β”€ app.py β”‚ β”œβ”€β”€ recommender_pipeline.py β”‚ β”œβ”€β”€ db_handler.py β”‚ β”œβ”€β”€ models/ β”‚ β”‚ β”œβ”€β”€ content_filter.py β”‚ β”‚ β”œβ”€β”€ kmeans_model.py β”‚ β”‚ β”œβ”€β”€ logistic_regression.py β”‚ β”‚ └── nlp_parser.py β”‚ β”œβ”€β”€ utils/ β”‚ β”‚ β”œβ”€β”€ pdf_to_text.py β”‚ β”‚ └── resume_parser.py β”‚ β”œβ”€β”€ uploads/ # (empty β†’ contains .gitkeep) β”‚ └── database/ # (empty β†’ contains .gitkeep) β”‚ β”œβ”€β”€ frontend/ β”‚ β”œβ”€β”€ streamlit_app.py β”‚ └── requirements.txt β”‚ β”œβ”€β”€ requirements.txt └── README.md


πŸ”§ Installation & Setup

Clone the repo:

git clone https://github.com/<your-username>/internify.git
cd internify

▢️ Run Backend (Flask)

Install backend dependencies:

pip install -r requirements.txt


Run server:

cd backend
python app.py


API available at:

http://127.0.0.1:5000

πŸ–₯️ Run Frontend (Streamlit)

Open new terminal:

cd frontend
pip install -r requirements.txt
streamlit run streamlit_app.py


Open in browser:

http://localhost:8501

πŸ§ͺ API Testing
Health Check
GET /

Signup
POST /signup
{
  "name": "test",
  "email": "test@example.com",
  "password": "pass123"
}

Upload Resume (example)
curl -X POST \
  -F "user_id=1" \
  -F "file=@resume.pdf" \
  http://127.0.0.1:5000/upload_resume

πŸ›  Tech Stack
Backend

Python

Flask

SQLite

scikit-learn

PyMuPDF

Frontend

Streamlit

Pandas

Matplotlib

ML/NLP

TF-IDF

Logistic Regression

KMeans

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

Kriti Dogra
AI/ML Developer & Designer
GitHub: https://github.com/Kd1880

πŸ“œ License

This project is licensed under the MIT License.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages