Skip to content

dineshingale/Resume_Optimizer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

7 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ“„ Resume Optimizer

An AI-powered tool that automatically tailors your resume to match specific job descriptions. Using Google's Gemini AI, it analyzes your existing resume against a job description (JD) and generates a new, optimized version with improved keywords and phrasing.

πŸš€ Features

  • Intelligent Analysis: Uses Gemini AI to understand context and matching requirements.
  • Docx Support: Reads and Writes directly to Microsoft Word (.docx) files.
  • Smart Replacement: Identifies specific text blocks in your resume and replaces them with tailored content while maintaining document structure.
  • Automated Workflow: Simple command-line interface to run the entire process.

πŸ› οΈ Tech Stack

  • Language: Python 3
  • AI Model: Google Gemini Pro (google-generativeai)
  • Document Processing: python-docx
  • Environment Management: python-dotenv

πŸ“¦ Installation & Setup

  1. Clone the repository:

    git clone https://github.com/dineshingale/Resume_Optimizer.git
    cd Resume_Optimizer
  2. Set up a virtual environment (Optional but Recommended):

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

    pip install -r requirements.txt
  4. Configure API Key: Create a .env file in the root directory and add your Google Gemini API key:

    GEMINI_API_KEY=your_actual_api_key_here

πŸ“– Usage

  1. Prepare your Input Files:

    • Place your resume file at: data/input/resume.docx
    • Place the job description text at: data/input/jd.txt
  2. Run the Optimizer:

    python run.py
  3. Get Results:

    • The script will analyze the documents and apply changes.
    • Find your optimized resume at: data/output/updated_resume.docx

πŸ“‚ Project Structure

Resume_Optimizer/
β”œβ”€β”€ data/
β”‚   β”œβ”€β”€ input/       # Place your resume.docx and jd.txt here
β”‚   └── output/      # Generated resumes will appear here
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ ai_engine.py    # Handles interaction with Gemini API
β”‚   β”œβ”€β”€ docx_handler.py # Reads and modifies Word documents
β”‚   β”œβ”€β”€ main.py         # Main orchestration logic
β”‚   └── prompts.py      # System prompts for the AI
β”œβ”€β”€ run.py           # Entry point script
β”œβ”€β”€ requirements.txt # Python dependencies
└── .env             # Environment variables (API Key)

⚠️ Notes

  • Ensure your .docx file is not open in Word while running the script, or it may fail to save.
  • The tool works best with text-based resumes. Complex layouts with text boxes may require manual adjustment.

🀝 Contributing

  1. Fork the repository.
  2. Create a feature branch (git checkout -b feat/amazing-feature).
  3. Commit your changes (git commit -m 'feat: add amazing feature').
  4. Push to the branch (git push origin feat/amazing-feature).
  5. Open a Pull Request.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages