Categories
self-hosted search-engine job-search job-aggregator full-text-search resume-builder application-tracking career-toolsStars
Forks
Watchers
Developer links
freehire
A job search engine you host yourself, freehire collects postings from employer career pages, so results link back to the original listing instead of a recruiter repost. Adapters for Greenhouse, Lever, Workday, Ashby, iCIMS, and dozens more normalize every posting into one schema and collapse cross-board duplicates into one entry. Full-text search narrows results by region, work mode, seniority, skills, and salary using curated dictionaries instead of model guesses, so filters return what they promise. Saved searches send email or Telegram digests of new matches, shared boards travel as unindexed links, and insights and trends show which skills are gaining postings and what roles pay by region. A ghost-job signal flags repost patterns and stale listings and shows its evidence, so you can spot roles that never actually close. The CV builder renders PDFs from templates marked ATS-safe or not, a deterministic score compares CVs with vacancies, and a connected LLM tailors CVs using only facts you assert, then rehearses the interview. An application board tracks every stage, a mail inbox links recruiter replies to the application they answer, and reminders flag silent leads. Self-hosters choose their own sources: one catalog row adds a company, and cron-driven workers crawl and index it. A keyless public API, a CLI, and an autofill Chrome extension extend it. Running on a dedicated VPS on RepoCloud with guaranteed CPU, RAM, and SSD, full root SSH access, and a browser serial console. MIT licensed.
Benefits
- Skip reposts and duplicate listings
- A role posted to several boards collapses into one normalized entry deduplicated on a stable key, and results link back to the original posting instead of a recruiter repost.
- Filters built on curated dictionaries
- Region, work mode, seniority, specialization, skills, and salary facets come from curated dictionaries, so an unrecognized value yields no tag at all instead of a plausible wrong one.
- Own your data and your sources
- The MIT-licensed code, crawl pipeline, and data stay on your own server, and adding a company takes one catalog row, with cron-driven workers crawling on a schedule you set.
- One workspace from search to offer
- Saved searches, a CV builder, match scoring, an application board, and a recruiter-mail inbox share one account, so tracking a job hunt never means juggling spreadsheets and browser tabs.
Features
- Faceted full-text search
- Meilisearch powers full-text queries narrowed by region, work mode, seniority, specialization, skills, and salary facets, kept current by an incremental write drain and a full reindex command.
- Multi-source crawl pipeline
- Source adapters for Workday, Greenhouse, Lever, iCIMS, Ashby, and more fetch, normalize, deduplicate, and upsert postings into PostgreSQL through run-once workers designed for cron scheduling.
- Ghost-job and market signals
- Flags repost patterns and posting age with its evidence shown, and rollup-built insights and trends pages report skill demand, regional pay, and which companies are actually hiring.
- CV builder and tailoring
- Typst templates render structured CVs to PDF with undoable revisions, and an optional OpenAI-compatible LLM tailors a CV per vacancy using only facts from your experience bank.
- Application board and inbox
- A stage board tracks every saved or applied job, while a mail inbox classifies recruiter replies, links them to applications, and advances stages, with reminders by email or Telegram.
- Public API, CLI, and extension
- A keyless catalogue API under /api/v1, a CLI, a Chrome side-panel extension that autofills application forms, and a ChatGPT Actions manifest let you build on freehire.