resume-optimizer / README.md
khirodsahoo93's picture
Upload 3 files
ea6430d verified

A newer version of the Gradio SDK is available: 6.9.0

Upgrade
metadata
title: Job Application Optimizer
emoji: πŸ’Ό
colorFrom: purple
colorTo: blue
sdk: gradio
sdk_version: 4.44.1
app_file: app.py
pinned: false

Job Application Optimizer πŸ’Ό

AI-powered tool to tailor your resume and generate personalized messages for job applications.

🌟 Features

  • πŸ“„ Resume Analysis: Upload your PDF resume and extract text
  • 🎯 Job Matching: Paste any job description
  • ✨ AI-Powered Generation:
    • πŸ’¬ LinkedIn message for recruiter (short, personal, 3-4 sentences)
    • πŸ“§ Email to hiring manager (detailed, professional, 5-7 paragraphs)
    • πŸ“‘ Tailored resume content (ATS-optimized keywords)
    • ⬇️ Download as PDF

πŸ€– Supported Models

  • GPT-4o (OpenAI) - Premium, fastest, most accurate
  • Claude-3.5-Sonnet (Anthropic) - Premium, excellent for professional writing

πŸš€ Quick Start

Local Development

# 1. Install dependencies
pip install -r requirements.txt

# 2. Set up environment variables
# Create a .env file with:
OPENAI_API_KEY=your_openai_api_key_here
ANTHROPIC_API_KEY=your_anthropic_api_key_here
APP_PASSWORD=your_secure_password

# 3. Run the app
python app.py

The app will launch at http://0.0.0.0:7860 with password protection.

πŸ” Authentication

  • Username: user
  • Password: Set via APP_PASSWORD environment variable (default: jobapp123)

πŸ“¦ Deployment to HuggingFace Spaces

Step 1: Create a Space

  1. Go to HuggingFace Spaces
  2. Click "Create new Space"
  3. Choose:
    • Name: job-application-optimizer (or your preferred name)
    • SDK: Gradio
    • Hardware: CPU Basic (free tier works fine)
    • Visibility: Public or Private

Step 2: Upload Files

Upload these files to your Space:

β”œβ”€β”€ app.py
β”œβ”€β”€ requirements.txt
β”œβ”€β”€ packages.txt
└── README.md

Step 3: Configure Secrets

Go to Settings β†’ Repository secrets and add:

OPENAI_API_KEY=sk-...your-key-here
ANTHROPIC_API_KEY=sk-ant-...your-key-here
APP_PASSWORD=your-secure-password

Step 4: Deploy! πŸŽ‰

Your app will automatically build and deploy. Access it at:

https://huggingface.co/spaces/YOUR_USERNAME/job-application-optimizer

πŸ“– How to Use

  1. Login with the password you set
  2. Upload your resume PDF (any format accepted)
  3. Paste the complete job description
  4. Select your preferred AI model (GPT-4o or Claude)
  5. Click "Generate Application Materials"
  6. Review the generated content:
    • Copy LinkedIn message
    • Copy email content
    • Review tailored resume
  7. Download the tailored resume as PDF

⚠️ Ethical Use Notice

This tool ONLY optimizes existing resume content. It NEVER fabricates experience.

What it does:

  • βœ… Rewrites bullet points for clarity and impact
  • βœ… Adjusts keywords to match job requirements
  • βœ… Reorders/emphasizes relevant experience
  • βœ… Highlights transferable skills

What it NEVER does:

  • ❌ Add skills or experience not in original resume
  • ❌ Change dates, company names, or job titles
  • ❌ Fabricate education or certifications
  • ❌ Invent projects or achievements

All outputs remain truthful to your original resume.

πŸ”§ Troubleshooting

"Error: OPENAI_API_KEY not found"

  • Make sure you added the API key in Space secrets
  • Restart the Space after adding secrets

"Error reading PDF"

  • Ensure your PDF is not password-protected
  • Try re-saving the PDF and uploading again

"No response from AI"

  • Check your API key has credits/quota
  • Try switching to the other model

PDF Download Not Working

  • Make sure you generated content first
  • The tailored resume text must be present

πŸ“ Requirements

  • Python 3.9+
  • Gradio 4.44.1
  • OpenAI API key (for GPT-4o)
  • Anthropic API key (for Claude)

See requirements.txt for full dependencies.

🀝 Support

For issues or questions:

  1. Check the troubleshooting section above
  2. Verify your API keys are valid and have credits
  3. Ensure your resume PDF is readable

πŸ“„ License

This project is provided as-is for educational and personal use.


Made with ❀️ for job seekers everywhere