Pick a starter pack
Start with a role preset that already ships with targeting rules, focus tags, and a sane first-pass source bundle.
jobpull is an open-source personal job board for public feeds from Greenhouse, Lever, Ashby, Recruitee, Personio XML, and generic JSON sources. Claim it once, keep it private while you track your own search, then publish it later if you want to turn it into a niche board.
Cloudflare-first, with a Docker path, owner magic links, and private-by-default visibility.
Four steps from a niche search idea to a board that stays current without turning into a scraping mess.
Start with a role preset that already ships with targeting rules, focus tags, and a sane first-pass source bundle.
Add official read-only endpoints instead of brittle HTML scrapers, then layer in your own tenant and niche sources.
The worker fetches feeds, applies your include and exclude rules, dedupes jobs, and quietly hides stale listings on recrawl.
The searchable board, digest, and admin tools all sit on the same dataset, so the board you publish is the board you actually operate.
Stop relying on ranking algorithms you do not control. jobpull keeps the crawl and the UI small enough that you can actually decide which roles make it onto the board.
Match titles with include and exclude patterns, optional description fallback, and remote-only filtering.
Review jobs by query, remote status, focus area, and sort order from the same board your crawler populates.
Change the board name, tagline, starter pack, seed sources, focus categories, and theme without rewriting the app.
The worker ships with a daily Cloudflare cron, an authenticated run endpoint for manual refreshes, and D1-backed configuration shared by the crawler, CLI, and admin UI. The Docker path keeps the same workflow with SQLite.
Run once per day by default, then change the cron when your board needs a different cadence.
Trigger a crawl from the admin tools or hit the protected API when you want a fresh pass immediately.
Board rules live in D1, so configuration changes made through the UI or CLI feed the same runtime state.
ETags, retries, host spacing, and backoff keep the crawler practical without pretending to be a scraping farm.
If you want to run a niche board for your community, team, or newsletter, join the waitlist and tell us what you are trying to launch. That input is the fastest way to shape the next deployment guides, feed templates, and onboarding flow.
Open the current signup flow, share your email and use case, and we will use that feedback to tighten the launch path.
Join WaitlistOpens the current signup form in a new tab.Fork the repo, pick a starter pack, and deploy the board on Cloudflare or Docker.