Customization guide
Use this guide when you want to change what jobpull keeps, how it classifies jobs, and where it runs.
Start with a pack
Starter packs are the fastest way to launch a board with sane defaults.
npm run cli -- packs list
npm run cli -- packs show product
npm run cli -- packs apply engineering
Available packs:
productengineeringdesigngtm
Pack application updates role targeting, focus categories, tag keywords, and managed starter sources without deleting custom sources.
Tune the role filters
The board keeps jobs based on the patterns in worker/src/config.ts.
Common changes:
- adjust
titleIncludePatternsto match the roles you want - adjust
titleExcludePatternsto remove adjacent roles - change
remoteOnlyif you want onsite or hybrid roles - edit
focusCategoriesto control the filters shown in the UI - update
tagKeywordsto drive auto-tags and digest grouping
Add sources
Prefer the CLI:
npm run cli -- sources
The built-in read-only providers are:
- Greenhouse
- Lever
- Ashby
- Recruitee
- Personio XML
- Generic JSON
See Source Feeds for the exact config shapes and validation rules.
Brand the board
Update the board name and tagline through the setup flow or the configuration CLI, then use the docs and landing page copy as a reference for the public-facing language.
Manage the schedule
The default crawl cadence is daily. For the Cloudflare path, update the cron in worker/wrangler.toml. For Docker, change CRON_SCHEDULE in .env.docker.
Handle stale jobs
jobpull soft-hides stale jobs instead of deleting them. Re-seen jobs are reactivated on the next crawl.
When to use Docker
Use Docker Compose if you want:
- one portable app container
- same-origin API and frontend
- SQLite on a VPS or local machine
- a deployment path that is not tied to Cloudflare