AI-Powered Resume Analyzer is a web application that helps users analyze and improve their resumes based on a provided job description. The application uses AI models to provide feedback and suggestions for enhancing the resume to better match the job requirements.
- Upload resume in PDF or DOCX format
- Paste job description for analysis
- Analyze resume against job description using AI models
- Generate feedback and suggestions for improving the resume
- Calculate resume match score
- Identify missing keywords and skills
- Download AI feedback as a PDF report
- Support for multiple languages (English and Español)
-
Clone the repository:
git clone https://github.com/yourusername/ai-powered-resume-analyzer.git cd ai-powered-resume-analyzer
-
Create a virtual environment and activate it:
python -m venv venv source venv/bin/activate # On Windows, use `venv\Scripts\activate`
-
Install the required dependencies:
pip install -r requirements.txt
-
Download NLTK resources:
import nltk nltk.download('punkt') nltk.download('stopwords')
-
Run the Streamlit application:
streamlit run resume_analyzer_app.py
-
Open your web browser and navigate to
http://localhost:8501
. -
Upload your resume (PDF or DOCX) and paste the job description.
-
Select the AI model (Free Public AI or OpenAI API) and enter the OpenAI API key if required.
-
Click the "Analyze Resume" button to get feedback and suggestions.
-
Optionally, click the "Improve Resume" button to generate improved resume bullet points.
-
Download the AI feedback as a PDF report.
- OpenAI API Key: If you choose to use the OpenAI API, you need to provide your OpenAI API key. You can enter the key in the application when prompted.
- Hugging Face API Token: If you use the free public AI model, you can set your Hugging Face API token using environment variables.
- Create a
.env
file in the root directory of the project. - Add your API keys to the
.env
file:HF_TOKEN=your_huggingface_api_token
The application supports multiple languages. You can add more languages by updating the translations dictionary in the resume_analyzer_app.py file.
Contributions are welcome! Please follow these steps to contribute:
- Fork the repository.
- Create a new branch (
git checkout -b feature/your-feature
). - Commit your changes (
git commit -am 'Add some feature'
). - Push to the branch (
git push origin feature/your-feature
). - Create a new Pull Request.
This project is licensed under the MIT License. See the LICENSE file for details.
If you like this app, consider supporting me: