Vite + React AI resume scanner featuring weighted, explainable ATS-style scoring. Securely processes PDF/DOCX resumes (with OCR) against job descriptions via a serverless proxy to Azure OpenAI.
Weighted, explainable ATS-style scoring with hard rejects and mobile-friendly flow.
npm install
npm run dev
npm run build
- Build:
npm run build - Output:
dist/ - Env:
AZURE_OPENAI_API_KEY+AZURE_OPENAI_ENDPOINT+AZURE_OPENAI_DEPLOYMENT(Azure OpenAI) - Requests go to
/api/scanserverless proxy which routes to Azure OpenAI only.
api/scan.jsis auto-detected as a Serverless Function at/api/scan.- Add the matching environment variables in Project Settings → Environment Variables.
api/health-env.jsis available at/api/health-envto verify provider env wiring without exposing keys.
- Sign in at vercel.com and import this GitHub repo.
- In the project setup screen, open Environment Variables.
- Add the Azure OpenAI variables only:
AZURE_OPENAI_API_KEY,AZURE_OPENAI_ENDPOINT,AZURE_OPENAI_DEPLOYMENT. - Set each variable for Production (and Preview/Development if needed).
- Click Deploy.
- If you later change any env var, redeploy so the function picks up the new values.
- Verify env wiring by opening
/api/health-envon the deployed app URL.
- Do not reuse one provider's key for another provider.
- Keep
.env.localout of source control (already ignored by.gitignore). - If you get
401 Unauthorized, the key value is invalid for that provider.
- Create a
.env.localfile in the pAzure OpenAI key or deployment is invalid - Start from
.env.exampleand fill only real keys. - Verify configuration with:
npm run env:check
- Then run:
npm run dev
- Check local health endpoint:
http://localhost:5173/api/health-env
- Build/Output same as above.
- Copy
api/scan.jstonetlify/functions/scan.js(or configure your functions dir) and add the same environment variables in site settings.
- Upload a text-based PDF/DOCX (or Load sample).
- Paste the Job Description (required).
- Fix red validation errors; warnings are optional.
- Mobile: Next → JD → Run. Desktop: click Run.
- Results show weighted score, dimensions, strengths, risks, gaps, rewrites. Copy/share as needed.