AI-powered backend service for tailoring resumes to specific job descriptions, optimizing for ATS (Applicant Tracking Systems), and exporting polished documents.
Deployed on Google Cloud Run.
- Resume tailoring using Google Gemini API
- Job description analysis (URL or pasted text)
- ATS compatibility checks (before & after)
- Job fit scoring (keywords, coverage, gaps)
- DOCX export of tailored resumes
- Stateless, production-ready API
- Framework: FastAPI
- AI Model: Google Gemini
- Deployment: Google Cloud Run
- Frontend: Next.js (Vercel)
- Language: Python 3.12+
resume-tailor-backend/
├── main.py # FastAPI entry point
├── services/ # Resume parsing, scoring, ATS logic
├── requirements.txt # Python dependencies
├── Dockerfile # Cloud Run container build
└── README.md
Upload a .docx resume.
Tailor the resume to a job description.
Input
{
"resume_id": "string",
"jd_url": "optional",
"jd_text": "optional",
"company_url": "optional"
}Output
{
"tailored_text": "...",
"change_log": [],
"suggestions": [],
"ats_before": {},
"ats_after": {},
"fit_score": {}
}Export the tailored resume as a .docx.
Configured in Cloud Run, not committed to GitHub.
GEMINI_API_KEY=your_api_key_here
python -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -r requirements.txt
uvicorn main:app --reloadDeployed using Google Cloud Run via container builds.
This repository is used for source control only — deployments are handled through Google Cloud.
- Generated files (exports, temp data) are excluded from version control
- Authentication and persistence are handled by the frontend
- Designed to be stateless and horizontally scalable