Step-by-step instructions to get the Resume Rating System running on your machine.
| Tool | Version | Install |
|---|---|---|
| .NET SDK | 9.0+ | Download |
| Node.js | 18+ | Download |
| Anthropic API Key | — | Get key |
Verify installations:
dotnet --version # Should show 9.x
node --version # Should show 18.x+
npm --version # Should show 9.x+git clone https://github.com/your-org/ResumeRating.git
cd ResumeRatingOption A — Environment variable (recommended):
export Anthropic__ApiKey="sk-ant-your-key-here"Option B — appsettings.json:
Edit ResumeRating.Api/appsettings.json:
{
"Anthropic": {
"ApiKey": "sk-ant-your-key-here",
"Model": "claude-sonnet-4-20250514"
}
}Option C — .NET User Secrets (most secure for local dev):
cd ResumeRating.Api
dotnet user-secrets init
dotnet user-secrets set "Anthropic:ApiKey" "sk-ant-your-key-here"Never commit API keys to source control. The
.gitignoreexcludesappsettings.Development.json.
cd ResumeRating.Api
dotnet runYou should see:
Now listening on: http://localhost:5073
Application started.
Verify it's working:
curl http://localhost:5073/api/resume
# Should return: []In a new terminal:
cd resume-rating-ui
npm install --legacy-peer-deps
npm startThe app opens at http://localhost:3000.
Either:
- Click "Load Sample Data" button in the UI header, or
- Run:
curl -X POST http://localhost:5073/api/evaluation/seed
This loads the 7 sample resumes from assets/ and the job description from assets/job-description.md.
Edit appsettings.json or set via environment variable:
export Anthropic__Model="claude-sonnet-4-20250514"Available models: claude-sonnet-4-20250514, claude-opus-4-20250514, claude-3-5-haiku-20241022
All data is stored as JSON files in ResumeRating.Api/App_Data/:
resumes.json— Uploaded resumes with extracted textjob_descriptions.json— Job descriptionsevaluations.json— AI evaluation resultsquestionnaires.json— Generated interview questionsl1_feedback.json— L1 round feedback
To reset all data, delete the App_Data/ folder and restart the backend.
| Problem | Solution |
|---|---|
| Port 5073 already in use | lsof -ti:5073 | xargs kill -9 |
| Port 3000 already in use | lsof -ti:3000 | xargs kill -9 |
npm start missing script |
Run from the resume-rating-ui/ directory, not project root |
| CORS errors in browser | Ensure backend is running on port 5073 |
Anthropic:ApiKey not configured |
Set the key via env var, appsettings, or user-secrets |
| PDF parsing fails | Ensure the PDF is text-based, not scanned images |