Prerequisites
- Python 3.13+
- Node.js 22+
- uv
- npm
Install uv with:
curl -LsSf https://astral.sh/uv/install.sh | sh
Local Development Setup
Clone the main Resume Matcher app repo, then start the backend and frontend in separate terminals.
git clone https://github.com/srbhr/Resume-Matcher.git
cd Resume-Matcher
# Terminal 1
cd apps/backend
cp .env.example .env
uv sync
uv run app
# Terminal 2
cd apps/frontend
npm install
npm run dev
Default Local URLs
- Frontend:
http://localhost:3000 - Backend:
http://127.0.0.1:8000
The frontend expects the backend at http://127.0.0.1:8000 by default.
Playwright Requirement for PDF Export
PDF generation depends on Playwright and Chromium. After backend dependencies are installed, run:
cd apps/backend
python -m playwright install chromium
Without this step, PDF export will fail.
Notes
npm installinapps/frontendinstalls frontend dependencies only.- Local development starts the frontend and backend separately.
- Configure your AI provider in the app after both servers are running.
- Supported providers include OpenAI, Anthropic, OpenRouter, Google Gemini, DeepSeek, and Ollama.
Troubleshooting
uv not found
Install it with:
curl -LsSf https://astral.sh/uv/install.sh | sh
Wrong Python version
Check:
python --version
Resume Matcher local development requires Python 3.13+.
Frontend cannot reach the API
Make sure the backend is running at http://127.0.0.1:8000.
PDF export fails
Re-run:
python -m playwright install chromium