Resume Matcher
𝙹𝚘𝚒𝚗 𝙳𝚒𝚜𝚌𝚘𝚛𝚍 ✦ 𝚆𝚎𝚋𝚜𝚒𝚝𝚎 ✦ 𝙷𝚘𝚠 𝚝𝚘 𝙸𝚗𝚜𝚝𝚊𝚕𝚕 ✦ 𝙲𝚘𝚗𝚝𝚛𝚒𝚋𝚞𝚝𝚘𝚛𝚜 ✦ 𝙳𝚘𝚗𝚊𝚝𝚎 ✦ 𝚃𝚠𝚒𝚝𝚝𝚎𝚛/𝚇 ✦ 𝙻𝚒𝚗𝚔𝚎𝚍𝙸𝚗
English | Español | 简体中文 | 日本語
Create tailored resumes for each job application with AI-powered suggestions. Works locally with Ollama or connect to your favorite LLM provider via API.
[!IMPORTANT]
This project is in active development. New features are being added continuously, and we welcome contributions from the community. If you have any suggestions or feature requests, please feel free to open an issue on GitHub or discuss it on our Discord server.
Getting Started
Resume Matcher works by creating a master resume that you can use to tailor for each job application. Installation instructions here: How to Install
How It Works
- Upload your master resume (PDF or DOCX)
- Paste a job description you're targeting
- Review AI-generated improvements and tailored content
- Cover Letter & Email generator for the job application
- Customize the layout and sections to fit your style
- Export as a professional PDF with your preferred template
Stay Connected
Join our Discord for discussions, feature requests, and community support.
Follow us on LinkedIn for updates.
Star the repo to support development and get notified of new releases.
Sponsors
We are grateful to our sponsors who help keep this project going. If you find Resume Matcher helpful, please consider supporting us to ensure continued development and improvements.
| Sponsor | Description |
|---|---|
| APIDECK | One API to connect your app to 200+ SaaS platforms (accounting, HRIS, CRM, file storage). Build integrations once, not 50 times. 🌐 apideck.com |
Support the Development by Donating
If you would like to support the development of Resume Matcher, you can do so by donating. Your contributions will help us keep the project alive and continue adding new features.
| Platform | Link |
|---|---|
| GitHub | |
| Buy Me a Coffee |
Key Features
Core Features
Master Resume: Create a comprehensive master resume to draw from your existing one.
Resume Builder
Paste in a job description and get AI-powered resume tailored for that specific role.
You can:
- Modify suggested content
- Add/remove sections
- Rearrange sections via drag-and-drop
- Choose from multiple resume templates
Cover Letter & Email Generator
Generate tailored cover letters and email templates based on the job description and your resume.
Resume Scoring (In development feature)
We are working on a resume scoring feature that will analyze your resume against the job description and provide a match score along with suggestions for improvement.
PDF Export
Export your tailored resume and cover letter in PDF.
Templates
| Template Name | Preview | Description |
|---|---|---|
| Classic Single Column | ![]() |
A traditional and clean layout suitable for most industries. 𝐕𝐢𝐞𝐰 𝐏𝐃𝐅 |
| Modern Single Column | ![]() |
A contemporary design with a focus on readability and aesthetics. 𝐕𝐢𝐞𝐰 𝐏𝐃𝐅 |
| Classic Two Column | ![]() |
A structured layout that separates sections for clarity. 𝐕𝐢𝐞𝐰 𝐏𝐃𝐅 |
| Modern Two Column | ![]() |
A sleek design that utilizes two columns for better organization. 𝐕𝐢𝐞𝐰 𝐏𝐃𝐅 |
Internationalization
- Multi-Language UI: Interface available in English, Spanish, Chinese, and Japanese
- Multi-Language Content: Generate resumes and cover letters in your preferred language
Roadmap
If you have any suggestions or feature requests, please feel free to open an issue on GitHub or discuss it on our Discord server.
- Visual keyword highlighting
- AI Canvas for crafting impactful, metric-driven resume content
- Multi-job description optimization
How to Install
For detailed setup instructions, see SETUP.md (English) or: Español, 简体中文, 日本語.
Prerequisites
| Tool | Version | Installation |
|---|---|---|
| Python | 3.13+ | python.org |
| Node.js | 22+ | nodejs.org |
| uv | Latest | astral.sh/uv |
Quick Start
Fastest for MacOS, WSL and Ubuntu users:
# Clone the repository
git clone https://github.com/srbhr/Resume-Matcher.git
cd Resume-Matcher
# Backend (Terminal 1)
cd apps/backend
cp .env.example .env # Configure your AI provider
uv sync # Install dependencies
uv run uvicorn app.main:app --reload --port 8000
# Frontend (Terminal 2)
cd apps/frontend
npm install
npm run dev
Open http://localhost:3000 and configure your AI provider in Settings.
Supported AI Providers
| Provider | Local/Cloud | Notes |
|---|---|---|
| Ollama | Local | Free, runs on your machine |
| OpenAI | Cloud | GPT-4o, GPT-4o-mini |
| Anthropic | Cloud | Claude 3.5 Sonnet |
| Google Gemini | Cloud | Gemini 1.5 Flash/Pro |
| OpenRouter | Cloud | Access to multiple models |
| DeepSeek | Cloud | DeepSeek Chat |
Docker Deployment
docker pull srbhr/resume-matcher:latest
docker run srbhr/resume-matcher:latest
See docs/agent/60-docker/docker.md for detailed Docker instructions.
Using Ollama with Docker? See docs/agent/60-docker/docker-ollama.md for setup instructions. TL;DR: Use
http://host.docker.internal:11434as the Ollama URL instead oflocalhost.
Tech Stack
| Component | Technology |
|---|---|
| Backend | FastAPI, Python 3.13+, LiteLLM |
| Frontend | Next.js 15, React 19, TypeScript |
| Database | TinyDB (JSON file storage) |
| Styling | Tailwind CSS 4, Swiss International Style |
| Headless Chromium via Playwright |
Join Us and Contribute
We welcome contributions from everyone! Whether you're a developer, designer, or just someone who wants to help out. All the contributors are listed in the about page on our website and on the GitHub Readme here.
Check out the roadmap if you would like to work on the features that are planned for the future. If you have any suggestions or feature requests, please feel free to open an issue on GitHub and discuss it on our Discord server.


















