ATS Resume Expert is a Streamlit-based application designed to analyze resumes against job descriptions using advanced language models. The app helps users identify strengths, improvement areas, and alignment percentage between resumes and job descriptions.
- PDF to Image Conversion: Converts PDF resumes into images for processing.
- Resume Analysis: Analyzes the resume based on the job description and provides feedback.
- Skill Improvement Suggestions: Suggests specific areas for skill development.
- Match Percentage: Calculates and displays the percentage match between resume and job description.
Follow these steps to set up and run the project locally:
git clone <repository_url>
cd <repository_name>
Create an isolated environment for the project:
python -m venv venv
- On Linux/macOS:
source venv/bin/activate
- On Windows:
venv\Scripts\activate
Install all the required Python packages:
pip install -r requirements.txt
The application requires the following Python libraries:
streamlit
: For creating the web interface.python-dotenv
: For managing environment variables securely.pdf2image
: For converting PDF pages into images.base64
: For encoding images.os
: For handling file operations.io
: For handling input/output streams.Pillow
: For working with image data.groq
: For leveraging the Groq API for AI-driven analysis.PyMuPDF (fitz)
: For working with PDF files.
Ensure these dependencies are included in the requirements.txt
file.
Create a .streamlit/secrets.toml
file in the project root and add your Groq API Key:
[secrets]
GROQ_API_KEY = "<your_api_key>"
Once everything is set up, run the application using Streamlit:
streamlit run app.py
- Open the application in your web browser.
- Select a model from the dropdown list.
- Input the job role and job description.
- Upload your resume (in PDF format).
- Click the desired action button:
- Tell Me About the Resume: Get a detailed analysis.
- How Can I Improve My Skills: Receive skill enhancement suggestions.
- Percentage Match: View the percentage alignment between resume and job description.
├── app.py # Main application file
├── requirements.txt # Python dependencies
├── README.md # Project documentation
├── .streamlit/
│ └── secrets.toml # Contains API keys and secrets
└── cv_img/ # Folder for storing converted images
Contributions are welcome! Feel free to fork the repository, make improvements, and create pull requests.
This project is licensed under the MIT License. See the LICENSE
file for more details.
Created by [MagedAlmoliki1].