Skip to content

YoussefOsama12345/Resume_Analyzer

Repository files navigation

Resume Analyzer

A powerful tool that analyzes resumes against job descriptions to provide matching scores and detailed feedback. Built with FastAPI and Streamlit, this application helps job seekers and recruiters evaluate resume-job description compatibility.

Resume Analyzer Python License

Features

  • Support for PDF and DOCX resume formats
  • Advanced text extraction and analysis
  • Matching score computation
  • Detailed feedback and suggestions
  • Job description parsing
  • Fast and responsive UI
  • Secure file handling
  • Automatic temporary file cleanup

Prerequisites

  • Python 3.8 or higher
  • pip (Python package installer)

Installation

  1. Clone the repository:

    git clone https://github.com/yourusername/resume-analyzer.git
    cd resume-analyzer
  2. Create a virtual environment:

    python -m venv venv
    source venv/bin/activate  # On Windows: venv\Scripts\activate
  3. Install dependencies:

    pip install -r requirements.txt

Usage

  1. Start the application:

    python run.py
  2. Open your web browser and navigate to:

    http://localhost:8501
    
  3. Upload your resume (PDF or DOCX format)

  4. Enter the job description

  5. Click "Analyze" to get your results

Project Structure

resume-analyzer/
├── ai/
│   ├── source/
│   │   ├── main.py           # FastAPI backend
│   │   ├── streamlit_app.py  # Streamlit frontend
│   │   └── ...
│   ├── extractors/          # Text extraction modules
│   └── scoring/             # Scoring algorithms
├── run.py                   # Application runner
└── requirements.txt         # Project dependencies

How It Works

  1. Resume Upload: Users upload their resume in PDF or DOCX format
  2. Text Extraction: The system extracts text from the resume
  3. Job Description Analysis: The job description is parsed for key requirements
  4. Matching Analysis: The system compares the resume against job requirements
  5. Score Generation: A matching score is computed
  6. Feedback Generation: Detailed feedback is provided based on the analysis

Contributing

We welcome contributions! Please see our Contributing Guidelines for details.

Code of Conduct

Please read our Code of Conduct to keep our community approachable and respectable.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgments

  • FastAPI for the backend framework
  • Streamlit for the frontend interface
  • All contributors who have helped shape this project

Support

If you encounter any issues or have questions, please:

  1. Check the FAQ section
  2. Search through existing Issues
  3. Create a new issue if your problem isn't already addressed

FAQ

What file formats are supported?

Currently, the application supports PDF and DOCX formats.

How accurate is the matching score?

The matching score is based on various factors including keyword matching, skill alignment, and experience relevance. However, it should be used as a guide rather than an absolute measure.

Can I analyze multiple resumes at once?

Currently, the application processes one resume at a time.

Is my data secure?

Yes, all uploaded files are processed locally and automatically deleted after analysis.

Roadmap

  • Support for more file formats
  • Batch processing capability
  • Enhanced feedback system
  • Resume improvement suggestions
  • Integration with job boards
  • Custom scoring criteria

Contact

For any queries or support, please reach out to:


Made with ❤️ by [Your Name]

About

No description, website, or topics provided.

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •