hr‑breaker: AI‑Powered Resume Optimizer for ATS Success
HR‑Breaker: AI‑Powered Resume Optimizer for ATS Success
What Is HR‑Breaker?
HR‑Breaker is a fully open‑source Python project that uses large language models (LLMs) to auto‑optimize any résumé into an ATS‑ready, single‑page PDF. The code is released under the MIT license and lives on GitHub at https://github.com/btseytlin/hr-breaker.
The tool is built on a handful of popular libraries:
| Library | Role |
|---|---|
| Pydantic | Type‑safe data models and validation |
| Click | Simple command‑line interface |
| Streamlit | Web UI for non‑technical users |
| WeasyPrint | Renders the final HTML into PDF |
| uv | Dependency resolution and execution wrapper |
The heart of HR‑Breaker is a pipeline that extracts, enriches, checks, and renders a résumé.
Key Features
- Format Agnostic Input – Upload plain text, Markdown, LaTeX, HTML or even a raw PDF.
- Single‑Page ATS‑Friendly PDF – Produces a neatly formatted, one‑page output that follows proven résumé guidelines.
- LLM‑Powered Optimization – An LLM tailors the content to a specific job posting while preserving the original content and avoiding hallucinations.
- Built‑in Validation Filters –
- Content length and structure checks
- Keyword matching with TF‑IDF
- ATS simulation via a lightweight model
- Hallucination detection and AI‑style text detection
- Semantic similarity check against the source résumé
- Web UI + CLI – Run the tool as a local Streamlit dashboard or from the command line for automation.
- Debug & Lenient Modes – Save every optimization iteration for debugging and a --no‑shame flag that relaxes constraints without hallucinating new experience.
How It Works
- Upload / Provide Input – A plain‑text résumé or a job posting URL/text.
- Extraction – The agent parses the résumé, stripping formatting and building a structured JSON model.
- Optimization Loop – The LLM generates an HTML resume, iterating until all filters pass.
- Rendering – WeasyPrint takes the final HTML and turns it into a PDF with professional styling.
- Output – The PDF is saved to
output/while debug iterations go tooutput/debug_*and a record is maintained inoutput/index.json.
Quick Start Guide
# 1. Install dependencies
uv sync
# 2. Configure your environment
cp .env.example .env
# edit .env and add your GOOGLE_API_KEY
# 3. Run the web UI
uv run streamlit run src/hr_breaker/main.py
Command‑Line Usage
# From raw résumé file and job URL
uv run hr-breaker optimize resume.txt https://example.com/job
# From job description file
uv run hr-breaker optimize resume.txt job.txt
# Debug mode (saves iterations)
ul run hr-breaker optimize resume.txt job.txt -d
# Lenient mode – relaxes constraints but still prevents fabrication
uv run hr-breaker optimize resume.txt job.txt --no-shame
# List generated PDFs
uv run hr-breaker list
Use Cases
| User | Scenario | How HR‑Breaker Helps |
|---|---|---|
| Job‑Seeker | Landing a role at a tech startup | Automatically tailors résumé to the posting, ensuring ATS passes and key skills appear first |
| Recruiter | Evaluating candidates | Batch‑processes a CSV of résumé URLs, standardises formatting and extracts keyword scores |
| Developer | Building a hiring pipeline | Integrates HR‑Breaker as a microservice, generating ATS‑ready PDFs on demand |
Why Open Source?
- Transparency – Every filter and transformation is visible, enabling audits.
- Community Contributions – Anyone can add new filters, improve the LLM prompts or add a new UI.
- No vendor lock‑in – Run it locally on your machine or containerize it for the cloud.
Contributing
- Fork the repo.
- Create a feature branch (
git checkout -b improve-filter). - Write tests in
tests/. - Run
uv run pytest. - Open a pull request and provide a short description of the change.
Check the [CLAUDE.md] file for contributor guidelines.
Future Roadmap
- Support for more LLM back‑ends (OpenAI, Anthropic, Azure OpenAI).
- Integration with popular ATS APIs for real‑time feedback.
- Custom styling themes.
- A VS Code extension that auto‑optimizes your résumé file.
Conclusion
HR‑Breaker is a powerful, low‑overhead solution for anyone who wants an AI‑driven résumé pipeline without the complexity of commercial tools. Its blend of robust validation, clear audit trails, and open‑source ethos makes it ideal for job‑seekers, recruiters, and developers alike. Give it a try — the code is on GitHub, the installation is just a few commands, and the first PDF comes back in seconds.
Happy optimizing!