This document provides cross-platform instructions to get the project up and running locally.
# 1. Run the PowerShell setup script
.\setup.ps1
# 2. (Optional) Start the development server
.\setup.ps1 -StartDev# 1. Make the scripts executable
chmod +x setup.sh
# 2. Configure your environment and install dependencies
./setup.sh
# 3. (Optional) Start the development server
./setup.sh --start-dev
# or via Makefile
make setup
make run-dev- PowerShell 5.1 or later
- Node.js ≥ v18 (includes
npm) - Python ≥ 3.8 (
python3,pip3) - winget (recommended for Ollama installation)
- uv (will be auto-installed by setup.ps1 if missing)
- Bash 4.4 or higher
- Node.js ≥ v18 (includes
npm) - Python ≥ 3.8 (
python3,pip3) - curl (for installing uv & Ollama)
- make (for Makefile integration)
On Windows: You can install missing tools via Windows Package Manager (winget) or manual downloads:
# Install Node.js via winget
winget install OpenJS.NodeJS
# Install Python via winget
winget install Python.Python.3.12Or download manually from official sites:
- Node.js: Download from https://nodejs.org/ (LTS version recommended)
- Python: Download from https://www.python.org/downloads/ (v3.8+ required)
- Ollama: Script will try to automatically install Ollama if it failed, Download from https://ollama.com/download/windows
On macOS, you can install missing tools via Homebrew:
brew update
brew install node python3 curl makeOn Linux (Debian/Ubuntu):
sudo apt update && sudo apt install -y bash nodejs npm python3 python3-pip curl makeThe project uses .env files at two levels:
- Root
.env— copied from./.env.exampleif missing - Backend
.env— copied fromapps/backend/.env.sampleif missing
You can customize any variables in these files before or after bootstrapping.
| Name | Description | Default |
|---|---|---|
SYNC_DATABASE_URL |
Backend database connection URI | sqlite:///db.sqlite3 |
SESSION_SECRET_KEY |
fastAPI session secret key | a-secret-key |
PYTHONDONTWRITEBYTECODE |
Disable Python bytecode files | 1 |
ASYNC_DATABASE_URL |
Backend async db connection URI | sqlite+aiosqlite:///./app.db |
NEXT_PUBLIC_API_URL |
Frontend proxy to backend URI | http://localhost:8000 |
Note:
PYTHONDONTWRITEBYTECODE=1is exported bysetup.shto prevent.pycfiles.
Note: Before You Run setup.sh
Make sure that Ollama is not only installed but also running. You can start the Ollama server manually by running:
ollama serveIf Ollama is not running, the script may fail to pull the required model (gemma3:4b).
-
Clone the repository
git clone https://github.com/srbhr/Resume-Matcher.git cd Resume-Matcher
-
Run PowerShell setup
.\setup.ps1
This will:
- Verify/install prerequisites (
node,npm,python3,pip3,uv) - Install Ollama via winget (if not present)
- Pull the
gemma3:4bmodel via Ollama - Bootstrap root & backend
.envfiles - Install Node.js deps (
npm ci) at root and frontend - Sync Python deps in
apps/backendviauv sync
- Verify/install prerequisites (
-
(Optional) Start development
.\setup.ps1 -StartDevPress
Ctrl+Cto gracefully shut down. -
Build for production
npm run build
-
Clone the repository
git clone https://github.com/srbhr/Resume-Matcher.git cd Resume-Matcher -
Make setup executable
chmod +x setup.sh
-
Run setup
./setup.sh
This will:
- Verify/install prerequisites (
node,npm,python3,pip3,uv,ollama) - Pull the
gemma3:4bmodel via Ollama - Bootstrap root & backend
.envfiles - Install Node.js deps (
npm ci) at root and frontend - Sync Python deps in
apps/backendviauv sync
- Verify/install prerequisites (
-
(Optional) Start development
./setup.sh --start-dev # or make setup make run-devPress
Ctrl+Cto gracefully shut down. -
Build for production
npm run build # or make run-prod
.\setup.ps1— Run complete setup process.\setup.ps1 -StartDev— Setup and start development server.\setup.ps1 -Help— Show PowerShell script helpnpm run dev— Start development servernpm run build— Build for production
make help— Show available targetsmake setup— Runsetup.shmake run-dev— start dev server (SIGINT-safe)make run-prod— Build for productionmake clean— Remove build artifacts (customize as needed)
-
Execution of scripts is disabled on this system:- Run
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUserin PowerShell as Administrator.
- Run
-
winget: command not found:- Install App Installer from Microsoft Store or update Windows 10/11.
-
Ollama installation failed:- Download and install manually from https://ollama.com/download/windows.
-
uv: command not foundafter installation:- Restart your PowerShell terminal and try again.
-
permission deniedonsetup.sh:- Run
chmod +x setup.sh.
- Run
-
uv: command not founddespite install:- Ensure
~/.local/binis in your$PATH.
- Ensure
-
ollama: command not foundon Linux:- Verify the installer script ran, or install manually via package manager.
-
npm cierrors:- Check your
package-lock.jsonis in sync withpackage.json.
- Check your
- Please make sure to have format on save option enabled on your editor (or) run
npm run formatto format all the staged changes.
Last updated: May 25, 2025
