The Smart Resume Match project aims to assist job seekers in optimizing their resumes for Applicant Tracking Systems (ATS) by comparing their resume against a given job description. Using advanced AI, this tool evaluates the resume, provides a matching score, identifies missing keywords, and generates a detailed profile summary. This helps users to enhance their resumes, increasing their chances of getting noticed by recruiters.
- Upload Resume: Upload your resume in PDF format.
- Job Description Input: Provide the job description for the role you are applying for.
- AI-Powered Analysis: Uses Google Generative AI to analyze the resume and job description.
- Matching Score: Displays a matching score in both progress bar and percentage format.
- Missing Keywords: Lists keywords that are missing from your resume but are present in the job description.
- Profile Summary: Provides a detailed summary of your profile highlighting key strengths and areas of improvement.
![image](https://private-user-images.githubusercontent.com/75364589/333048403-42424b61-c25e-4dd9-9381-214a53d4f200.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjQwNDY0MzUsIm5iZiI6MTcyNDA0NjEzNSwicGF0aCI6Ii83NTM2NDU4OS8zMzMwNDg0MDMtNDI0MjRiNjEtYzI1ZS00ZGQ5LTkzODEtMjE0YTUzZDRmMjAwLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA4MTklMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwODE5VDA1NDIxNVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWY0NWRlNWU0OWRlMWQ3OGI4YjU3N2I5MmVkNjNkN2U5YzlmNWZmNTM3MTRjZDhkZjUyNWE0N2JjMTA5ZDFkNmMmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.R87YOPa96MpuG1exiFlX2RY2CYHCWOGVUpysV7_KoH4)
Link : https://smartatsllm.streamlit.app/
- Python 3.7 or higher
- Streamlit
- PyPDF2
- dotenv
- Google Generative AI API Key
-
Clone the repository:
git clone https://github.com/MayurJadhav-1998/ATS_LLM_Google_Gemini cd smart-resume-match
-
Create a virtual environment:
python -m venv venv source venv/bin/activate # On Windows use `venv\Scripts\activate`
-
Install dependencies:
pip install -r requirements.txt
-
Set up environment variables:
- Create a
.env
file in the project root directory. - Add your Google API key to the
.env
file:GOOGLE_API_KEY=your_google_api_key
- Create a
-
Run the application:
streamlit run app.py
-
Open the Application:
- After running the application, it will open in your default web browser.
-
Input Job Description:
- Enter the job description for the role you are applying for in the provided text area.
-
Upload Resume:
- Click the "Browse files" button to upload your resume in PDF format.
-
Submit:
- Click the "Submit" button to get the analysis.
-
View Results:
- The matching score will be displayed as a progress bar and percentage.
- Missing keywords will be listed.
- A profile summary will be generated to help you understand your strengths and areas of improvement.
smart-resume-match/
│
├── app.py # Main application file
├── requirements.txt # Dependencies
├── .env # Environment variables file (to be created)
├── README.md # Project documentation
└── venv/ # Virtual environment directory
-
Import Statements:
- Import necessary libraries such as Streamlit, Google Generative AI, PyPDF2, dotenv, and os.
-
Configuration:
- Load environment variables and configure the Google Generative AI with the API key.
-
Functions:
get_gemini_response(prompt)
: Sends a prompt to the Generative AI and returns the response.get_pdf_text(uploaded_file)
: Extracts text from the uploaded PDF file.parse_response(response_string)
: Parses the plain response string from the AI to extract match score, missing keywords, and profile summary.format_response(response)
: Formats and displays the response on the Streamlit app.
-
Streamlit App Layout:
- Title and subtitle for the app.
- Input fields for job description and resume upload.
- Submit button to trigger the analysis.
- Display results including match score, missing keywords, and profile summary.
We welcome contributions to improve the Smart Resume Match project. If you have any ideas, suggestions, or bug fixes, feel free to submit a pull request or open an issue.
- Fork the repository.
- Create a new branch:
git checkout -b feature/your-feature-name
- Make your changes.
- Commit your changes:
git commit -m 'Add some feature'
- Push to the branch:
git push origin feature/your-feature-name
- Create a pull request.
This project is licensed under the MIT License. See the LICENSE file for more details.
For any questions or suggestions, please contact:
- Email: [email protected]
- GitHub: https://github.com/MayurJadhav-1998
By using this application, you agree to our terms and conditions. Please ensure your resume does not contain sensitive personal information before uploading.
Smart Resume Match: Ace the ATS Game! - Boost your chances with a resume that shines!