Jobtailor

PrivateStage 2-8

Upload a résumé, find openings that fit, and get a version tailored to one posting.

Fig 1 / 3Openings from four job boards, ranked by skill overlap
LLM providers
3
Job boards
4

Private repository.

  • TypeScript
  • React
  • GSAP
  • Express
  • node:sqlite
  • Ollama
  • Claude API

About

An LLM turns a résumé into a structured search profile, the app searches free job boards for those titles, ranks the results by skill overlap, and streams back a résumé rewritten for any one posting.

Highlights

  • Three LLM providers behind one interface with schema-constrained JSON and streaming: Ollama locally for free, the Claude Code CLI, or the Anthropic API.
  • Scraped postings are sanitised against prompt injection — invisible and direction-override characters, look-alike letters — and fenced as data.
  • Résumé versions, each with its own saved matches and tailored cuts.

How it flows

From start to goal, the path the data takes

  1. Résumé
  2. Search profile
  3. 4 job boards
  4. Ranked by skill overlap
  5. Tailored résumé