Job Tracker

A “save to my job tracker” button for every job site — described to Claude, not written by hand.

I was job hunting and drowning in tabs. Seek keeps its own saved list, LinkedIn keeps another, and neither of them talks to the Trello board where I actually track applications. The thing I wanted — one button on every listing that files the job straight into my pipeline — didn’t exist, so I described it to Claude until it did.

The result is a Chrome extension that puts a + Track job button on every Seek and LinkedIn listing and saves it to a Trello board in one click, with status tracking from Saved all the way through to Offer.

What it does

One-click saving

A button appears on every Seek and LinkedIn listing; clicking it captures the title, company, location, salary and a clean canonical URL.

A pipeline, not a list

Jobs move through Saved → Applied → Interview → Offer / Rejected. The popup shows your stats — response rate, source breakdown — and exports CSV or JSON.

Works with zero setup

Out of the box everything lives locally in your browser. Connecting Trello is optional, takes a few minutes, and the settings page walks you through it.

Save from your phone too

An optional iOS Shortcut adds Track job to the share sheet inside the LinkedIn and Seek apps, feeding the same board.

No duplicates, no babysitting

Save the same job twice, even from two devices, and it’s deduplicated. If a site changes and scraping fails, you still get a card with the link rather than a silent miss.

How it works

Desktop

Chrome extension

  • Content script on the listing page
  • Saves & dedupes locally
  • Popup tracker, CSV / JSON export
Phone — optional add-on

iOS Shortcut → Cloudflare Worker

  • Track job in the share sheet
  • Worker (free tier) fetches the page
  • Same scrape, same dedup, server-side
api.trello.com → your “Job Hunt” board

The desktop path needs no server at all: your jobs go from your browser straight to your Trello, using a token that never leaves your machine. The Cloudflare Worker exists only to give your phone a way in — if you skip mobile, you never touch it. And if you don’t use Trello, the whole thing works standalone: jobs live in the extension’s local tracker and export to CSV or JSON.

Built by describing it

I’m a product manager, not a developer. The total hand-written code in this project is zero — I described the tool I wanted to Claude, and one conversation later the button existed.

Hand-written code: zero.
Every line was written by describing what I wanted, in plain English.

The part I didn’t expect was the upkeep. Job sites change their pages constantly, and every change breaks a scraper like this one. Four times now a site has shifted under it — a domain move, LinkedIn hashing all its CSS class names, a new slide-out job pane on Seek — and each time the fix was a plain-English description of the symptom rather than an afternoon in the code. The longest repair took fifteen minutes.

That maintenance loop turned out to be the actually interesting story, so I wrote it up separately:

The full story
Building the tool was the easy part

Try it

Heads up — this isn’t on the Chrome Web Store (deliberately; it’s a demo, not a product), so install is the manual-but-quick kind, and updates mean re-downloading.

Level 1 — desktop about 5 minutes
  1. Download the repo as a zip and unzip it (or grab a release, or clone it).
  2. Go to chrome://extensions, switch on Developer mode (top-right), click Load unpacked, and choose the extension folder.
  3. Open any Seek or LinkedIn listing (reload the tab if it was already open) and save — you’re tracking locally already.
  4. Optional, a few minutes: click the Job Tracker icon → Settings → connect Trello. The settings page walks you through a free Trello API key and a token, then creates your board. Every saved job now lands on a kanban board too.
Level 2 — add your phone about 15 minutes · optional

Deploy the included Worker to your own free Cloudflare account and install the Shortcut — see mobile/README.md. It’s the one part with real setup, but by the time you want it you’re already hooked. If you have Claude Code, opening the repo and saying “set up mobile saving” walks you through the whole thing.

Build your own

Job Tracker is one instance of a pattern:

any site you browse → grab structured data on click → send it to the tool where you actually work

Recipes to Notion. Properties to a spreadsheet. Papers to Zotero. Leads to a CRM. The shape is identical: one content script per source site, one thin API client per destination, local storage as the spine, and an optional extra entry point (like the phone) when your workflow grows.

The repo is set up so Claude can adapt it for you. Clone it, open it in Claude Code, and say something like:

“Adapt this to track jobs from Indeed instead of Seek”
“Send saved jobs to Notion instead of Trello”

CLAUDE.md gives Claude a map of the codebase, and BUILD-YOUR-OWN.md is the same walkthrough for humans.

Honest limitations

  • Scrapers rot. Seek or LinkedIn will change their pages again and the button will break again. The fix loop is a mitigation, not immunity.
  • No auto-updates. Unpacked extensions don’t update themselves; new versions mean re-downloading the zip and reloading.
  • Your Trello token lives in your browser’s extension storage. It grants read/write to your whole Trello account — Trello tokens aren’t board-scoped — and never expires on its own; it stays valid until you revoke it under Trello → Settings → Applications. Treat it like a password: fine on a personal machine, think twice on a shared one.

Open source under the MIT licence. Take it, fork it, point it at your own tools.