Skip to content

MohammedNasserAhmed/ats-cover-letter-generator

Repository files navigation

📝 ATS Cover Letter Generator

An AI-powered ATS-optimized cover letter generator leveraging LLaMA-3.1-8B-Instant via Groq's API.

GitHub stars
GitHub license Python version Streamlit Docker


🌟 Overview

The ATS Cover Letter Generator bridges the gap between job seekers and employers by leveraging AI to create perfectly tailored, Applicant Tracking System (ATS) optimized cover letters. Using Groq's high-performance LLaMA-3.1-8B-Instant API, the application analyzes your resume and job descriptions to craft compelling cover letters that increase your chances of interview selection.

✨ Key Features

Feature Description
📄 Resume/CV Parsing Extracts text from uploaded PDFs automatically
🔍 Job Description Analysis Paste job details directly or fetch via URL
🧠 AI-Powered Matching LLaMA-3.1-8B-Instant tailors content to highlight relevant skills
🎯 ATS Optimization Strategic keyword placement ensures visibility to hiring algorithms
👁️ Side-by-Side Review Compare your resume with job requirements in real-time
📑 Professional PDF Output Generate polished, ready-to-submit cover letters
✍️ Digital Signature Auto-generates signature for a professional touch
☁️ Flexible Deployment Deploy via Docker, Streamlit Cloud, or Hugging Face Spaces

🚀 Quick Start

Using Docker (Recommended)

# Pull the image
docker pull mohammednasserahmed/ats-cover-letter-generator:latest

# Run the container
docker run -d -p 8501:8501 -e GROQ_API_KEY=your_groq_api_key_here mohammednasserahmed/ats-cover-letter-generator

Local Installation

# Clone the repository
git clone https://github.com/MohammedNasserAhmed/ats-cover-letter-generator.git
cd ats-cover-letter-generator

# Create & activate virtual environment
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

# Install dependencies
pip install -r requirements.txt

# Set up environment variable
echo "GROQ_API_KEY=your_groq_api_key_here" > .env

# Run the application
streamlit run src/ats_cover_letter_generator/app.py

Then access the app at http://localhost:8501

🌐 Deployment Options

🐳 Docker Deployment

# Build the Docker image
docker build -t ats-cover-letter-generator .

# Run the container
docker run -p 8501:8501 --env-file .env ats-cover-letter-generator

🖥️ Production Server (Background Process)

nohup streamlit run src/ats_cover_letter_generator/app.py --server.port 8501 &

⚙️ Customization & Advanced Usage

Adjusting AI Parameters

The sidebar provides controls for adjusting the AI's creativity level (temperature):

  • Low (0.1-0.3): More conservative, follows templates closely
  • Medium (0.4-0.7): Balanced creativity and precision
  • High (0.8-1.0): More innovative, varied outputs

📊 Performance & Limitations

  • Processing Time: ~5-15 seconds depending on input length
  • Token Limits: Maximum combined resume + job description ~8,000 tokens
  • Best Results: Achieved with clean, well-structured resumes and detailed job descriptions

🤝 Contributing

Contributions are welcome! Help improve this tool by:

  1. Forking the repository
  2. Creating a feature branch (git checkout -b feature/amazing-improvement)
  3. Committing your changes (git commit -am 'Add amazing improvement')
  4. Pushing to the branch (git push origin feature/amazing-improvement)
  5. Opening a Pull Request

See CONTRIBUTING.md for detailed guidelines.

🔍 Architecture

ats-cover-letter-generator/
├── .venv/                        # Virtual environment
├── assets/                       # Assets like images and demo GIFs
├── src/
│   └── ats_cover_letter_generator/
│       ├── __init__.py           # Package initialization
│       ├── app.py                # Main Streamlit application
│       ├── test_app.py           # Unit tests for the application
│    
├── Dockerfile                    # Docker configuration
├── requirements.txt              # Python dependencies
├── README.md                     # Project documentation
└── .env                          # Environment variables                    # Project documentation

📝 License

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

📩 Contact & Support


Empower your job search with AI-crafted, ATS-optimized cover letters in seconds!

About

An AI-powered ATS-optimized cover letter generator leveraging LLaMA-3.1-8B-Instant via Groq's API

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published