← All work

JobTrack

A local-first job application tracker built around one question: have I already applied here? Duplicate detection, meaning-based search, a browser clipper and an MCP server for AI assistants.

Jobtrack en

When you apply broadly, it gets hard to remember where you have already been. JobTrack keeps every application, saved posting and contact in one place, and checks every new entry against what you already have before it is saved.

Highlights

  • Duplicate detection. As you type a company and title, JobTrack tells you whether it is an exact repeat, a similar role at the same employer, a company you have already approached, or genuinely new. Company names are normalized, so "Spotify AB" and "Spotify, Inc." count as one employer.
  • Search by meaning. Typo-tolerant keyword search is combined with semantic search, so "server side developer" finds a "Backend Engineer" role. Both result sets are merged into one ranked list.
  • Capture postings anywhere. Paste a link or the posting text, or use the JobTrack Clipper browser extension (Edge and Firefox) to save the page you have open, including from sites like LinkedIn that block server-side reading.
  • Matching against your profile. Define target titles, location, salary floor and keywords, and saved openings are scored and ranked with the reasoning shown.
  • Networking. Track contacts, conversations and reconnect reminders, and import your network from LinkedIn's data export. Existing contacts at a company are flagged before you apply.
  • A dashboard that stays honest. The pipeline counts every stage an application reached, so conversion rates stay meaningful, alongside two years of volume and a "gone quiet" list.

Works with your AI assistant

JobTrack also runs as an MCP server. An assistant like Claude can log applications, save postings, check what is waiting for a reply or run a weekly review with draft follow-ups. Every change needs your confirmation, and the assistant cannot delete anything.

Your data stays yours

By default everything runs locally on a single database file, either as a background process with a tray icon or as an installed Windows app. Data can be exported to Excel or CSV. The data layer is built on Repolayer, so moving to a hosted Postgres database later is a config change, not a rewrite.

TYPESCRIPT
REACT
VITE
FASTIFY
SQLITE/POSTGRES (VIA REPOLAYER)
HYBRID SEARCH (TRANSFORMERS.JS)
MCP
2026