Getting Started with JobFoundry
JobFoundry runs as a local daemon on your machine or private server. Follow this guide to initialize the server, configure your LLM endpoint, and verify service health.
Prerequisites
- Runtime: Linux, macOS, or Windows WSL2.
- Container Engine (Recommended): Docker or Podman with compose support.
- Manual Node.js: Node.js version 22 or higher with npm.
- LLM Backend (Optional for scoring): Local Ollama, vLLM, or any OpenAI-compatible API.
Method 1: One-Line Install Script
The fastest way to deploy JobFoundry locally on Linux and macOS:
$ curl -sSL https://raw.githubusercontent.com/deadrat-in/JobFoundry/main/install.sh | bashThis script verifies container runtimes (Podman or Docker), clones or updates repository assets, initializes .env, and starts the container daemon.
Method 2: Docker Compose or Podman
If you prefer cloning the repository and managing services via compose:
$ git clone https://github.com/deadrat-in/JobFoundry.git && cd JobFoundryCopy the sample configuration and configure your secrets:
$ cp .env.example .envStart the pipeline services in the background:
$ docker compose up -dOr with Podman:
$ podman compose up -dMethod 3: Native Node.js Setup
For active development or running without containers:
$ npm install && npm testStart the web server and ingestion workers:
$ npm startEnvironment Configuration (.env)
JobFoundry stores settings in a local .env file. The key configuration parameters include:
| Variable | Default | Description |
|---|---|---|
PORT | 8080 | Port for the web dashboard and extension ingestion API. |
DATABASE_URL | sqlite://./data/jobfoundry.db | Local SQLite database or Postgres connection string. |
LLM_BASE_URL | http://localhost:11434/v1 | Base URL for your LLM endpoint (Ollama default). |
LLM_MODEL | llama3:latest | Model name used for fit scoring and criteria evaluation. |
SIMHASH_THRESHOLD | 3 | Hamming distance threshold for detecting duplicate jobs. |
Verifying Installation
Confirm the daemon is listening and healthy by probing the health check endpoint:
$ curl -i http://localhost:8080/healthOnce healthy, open http://localhost:8080 in your browser to view the Kanban dashboard. Next, install the companion browser extension to begin ingesting job postings.