ATS Score Calculify is a web application designed to evaluate resumes against job descriptions using advanced AI models. It offers three main functionalities:
This tool is built using Streamlit for the user interface and Google Generative AI for processing and analyzing the content.
To set up the project on your local machine, follow these steps:
git clone https://github.com/your-username/ats-score-calculify.git
cd ats-score-calculify
### 2. Create a Virtual Environment
Create a virtual environment to manage dependencies:
```bash
python -m venv .venv
Windows:
.venv\Scripts\activate
macOS/Linux:
source .venv/bin/activate
Install the required packages from requirements.txt
:
pip install -r requirements.txt
Create a .env
file in the project root directory and add your Google Generative AI API key:
GOOGLE_API_KEY=your_google_api_key
Ensure that Poppler is installed and added to your PATH environment variable. Download it from Poppler for Windows or the Poppler official website.
Add the Poppler bin
directory to your PATH:
Windows:
Open Command Prompt and run:
set PATH=%PATH%;C:\Program Files\Poppler\Library\bin
macOS/Linux:
Add the following line to your .bashrc
or .zshrc
file:
export PATH="/path/to/poppler/bin:$PATH"
Replace /path/to/poppler/bin
with the actual path to the Poppler bin
directory.
Start the Streamlit server with:
streamlit run app.py
Open your web browser and navigate to http://localhost:8501 to access the application.
In the “Job Description” text area, input the job description for the role you are evaluating.
Upload the resume in PDF format using the “Upload Resume” button.
Choose one of the following actions:
Results will be displayed on the page based on the selected action. If you choose “Percentage Match,” a bar chart showing the match percentage will also be displayed.
GOOGLE_API_KEY
in your .env
file is correct and valid.bin
directory is in your PATH.PDFPageCountError
: This usually means the PDF file is empty or corrupted. Check the file and ensure it’s a valid PDF.ValueError: could not convert string to float
: This indicates a parsing issue. Make sure the response text from the API contains a valid percentage.