Back to Discover

jobseek

connector

colophon-group

Search jobs, companies, and watchlists on Job Seek (jseek.co)

View on GitHub
0 starsSynced Aug 12, 2026

Install to Claude Code

/plugin marketplace add colophon-group/jobseek

README

Job Seek

An open-source job aggregator that monitors 4,400+ company career pages directly.

Roles land here within hours of the company posting them — once, in canonical form, with no third-party reposts.

Try jseek.co →  ·  Self-host  ·  Add a company

MIT License Job data CC BY-NC 4.0 CI CodeQL PyPI GitHub stars

Job Seek — Track the companies you actually want to work at

Tracking Stripe · Anthropic · OpenAI · Figma · Vercel · Datadog · Mistral · Hugging Face · Linear · Notion · Roche · Nestlé · UBS · Swisscom · ABB · SAP · Siemens · Klarna · N26 · Wise · Monzo — and ~4,380 others. Full list: apps/crawler/data/companies.csv.


How it compares

Job SeekLinkedIn / IndeedRoll-your-own (JobSpy, JobFunnel)
SourceDirect from employer career pagesAggregated from job boardsWhatever you wire up
Postings per roleOne canonical entry1–N copiesDepends
Coverage4,400+ vetted companiesMillions, mostly duplicatesBring your own
Latency from postingTypically hoursDaysYour schedule
SearchTypesense, faceted (seniority, stack, locale, salary)Keyword + locationNone bundled
Self-hostYes — one repo, MITNot possibleDIY
LicenseMIT code, CC BY-NC 4.0 dataClosedPer-project

What you get on jseek.co

ExploreExplore. Filter every tracked company by seniority, tech stack, salary, location, and posting language. Free, no account.
Company pageCompany pages. Live and historical posting counts, similar-company suggestions, every role linked back to the source.

A built-in application tracker moves saved roles through saved → applied → interviewing → offered/rejected, with stats and an interview log. Free for everyone. Pro ($10/month) unlocks unlimited watchlists with email alerts.

Built by Colophon Group, a small team in Switzerland — so German, French, and Italian aren't an afterthought.


Add a company

Open issues labelled company-request are companies waiting to be added — most resolve in five minutes with a coding agent.

ws is a tool for your coding agent, not for you directly. Set up Claude Code, Cursor, or another agent first; the agent installs and runs the CLI itself.

pip install jobseek-crawler-setup

Pick an issue, then hand your agent this prompt:

Run ws task --issue <NUMBER> and follow the printed instructions.

ws walks the agent through fetching the issue, finding the career page, choosing the right monitor and scraper from the 40 available, validating the result, and opening a PR. Choosing the right combination by hand is tedious — getting it wrong silently misses postings, which is why the workflow is structured this way.

No open issues for the company you want? Request it. Anyone can.

Agent environment: git, gh (authenticated), Python 3.12+, web access.


Run your own

Clone, point at your Postgres + Redis + Typesense, run the crawler and the Next.js app:

git clone https://github.com/colophon-group/jobseek
cd jobseek

# Crawler (Python 3.12+, uv)
cd apps/crawler
uv sync
cp .env.example .env.local      # DATABASE_URL, REDIS_URL, TYPESENSE_*
uv run crawler sync             # CSV → Postgres + Redis + Typesense
uv run crawler run              # start a worker

# Web app (Node 20+, pnpm)
cd ../web
pnpm install
pnpm db:migrate
pnpm dev                        # http://localhost:3000

Architecture overview: AGENTS.md. Search stack — collections, scoped API keys, deployment: docs/11-typesense.md. Production routines: error review, daily labelling.


What's in the repo

apps/crawler/          Python pipeline (asyncio, Playwright fallback)
  src/core/monitors/   Monitor types — Greenhouse, Lever, Workday, …
  src/core/scrapers/   Scrapers — JSON-LD, DOM, sitemap, vendor-specific
  src/redis_queue.py   Claim queue with atomic reservation, requeue, reschedule
  src/exporter.py      CDC: local Postgres → Typesense
  src/labeller/        Daily labelling pipeline (HuggingFace upload)
  src/workspace/       `ws` — agent orchestrator for company onboarding
  data/companies.csv   Source of truth — every tracked company is one row
  data/boards.csv      One row per board (monitor + scraper config)

apps/web/              Next.js 16 + Drizzle + Lingui + Better Auth
  app/[lang]/...       Path-prefix i18n (en / de / fr / it)
  src/db/schema.ts     Drizzle schema for the web-owned Postgres boundary

docs/                  Architecture and operational routines
scripts/               Typesense setup, backfill, IndexNow notifications

License

  • CodeMIT. Use, modify, redistribute, no warranty.
  • Job-posting dataCC BY-NC 4.0. Free for research and non-commercial reuse with attribution. Not "open data" by the strict OKD definition. For commercial licensing, get in touch via business@colophon-group.org.

Built in Switzerland by Colophon Group. Privacy · Terms · Issues and PRs welcome.

Rendered live from colophon-group/jobseek's GitHub README — not stored, always reflects the source repo.

1 Install Method

NameDescriptionCategorySource
npm packageInstall via npm (stdio transport)mcp-server@jseek/mcp-server

0 Comments

Login required
Log in to post a comment or update on this repo.

No comments yet — be the first to share an update.