Recipe
Recipe: Resume → JD Matcher
Parse a resume and job description, then score alignment with actionable gap analysis.
Ingredients
- PDF or DOCX resume upload endpoint
- Job description text input (pasted or URL-scraped)
- LLM call with structured JSON output schema
- Score breakdown: skills, experience, education, keywords
Steps
- 1Extract text. Use a server-side parser to pull raw text from the uploaded resume file. Strip formatting, headers, and footers.
- 2Normalize both inputs. Trim whitespace, collapse newlines, and truncate each to the model's context window minus the prompt template.
- 3Craft the prompt. Instruct the LLM to return a JSON object with an overall match percentage and per-category scores. Ask for missing keywords and a short summary.
- 4Render results. Display the overall score as a radial gauge, category breakdowns as horizontal bars, and missing keywords as pill-shaped tags.
Output Schema
{
"overall_match": 78,
"skills": 85,
"experience": 70,
"education": 90,
"keywords_matched": ["React", "TypeScript"],
"keywords_missing": ["GraphQL", "AWS Lambda"],
"summary": "Strong frontend fit; add backend keywords."
}Pro Tips
- • Cache parsed resume text in the session to avoid re-parsing on JD changes.
- • Use streaming to show category scores as they arrive.
- • Validate JSON output with a schema guard before rendering.