Case study · 2026

Bored of job boards? Same.

JobBored turns your Google Sheet into a pipeline the rest of the internet wishes it invented.

Open sourceZero backendYour keys · your data
JobBored kanban dashboard — eight stages, mint rail on the Interviewing column, fit scores on every card
8 stageskanban
18,000 linesJS · CSS
0 serversstatic
1 Sheetyour data
The long pitch

The job search is the one thing we track in spreadsheets and apologize for tracking in spreadsheets. JobBored stops the apology. Point it at a Google Sheet and suddenly you have a kanban with fit scores, heat badges, a daily brief, ATS-parser-grade resume analysis, and an optional agent that scouts Workday and Ashby while you sleep. There's no backend. There's no vendor. There's no "sign up with Google." It's 18,000 lines of hand-rolled JS and CSS, deployable to anywhere that serves static files — and every action writes back to the Sheet in real time.

Five features. One sheet.

Scan-first · mint rail
01
· 01

Sheet-native pipeline

Kanban that writes back to your Sheet.

Eight stages, priority badges, tags, and notes — all synced bidirectionally with the Google Sheet you already maintain.

02
· 02

ATS Scorecard

See your resume through the parser's eyes.

A local LLM (Gemini or Claude) scores requirements coverage, tone fit, and parseability. Flags gaps. Suggests before/after rewrites you can actually use.

03
· 03

Daily Brief

The follow-ups you'd otherwise forget.

Two-column executive view: what's due, who owes you a reply, what's gone cold. Built for the morning coffee.

04
· 04

Agentic Discovery

Your bot scouts while you sleep.

Webhook contract plugs into Browser Use, n8n, Apps Script, or GitHub Actions. Auto-fills the pipeline from SerpApi or grounded search. No brittle scraping.

05
· 05

Zero backend, forever

Static files. Your keys. Your data.

Drop it on GitHub Pages, Netlify, Cloudflare, or a USB stick. The optional Node helper runs locally for ATS scoring.

Connect a Sheet.

Two screens · no signup maze
Step 1 · paste the URL· local
JobBored settings: the main page where you paste the Google Sheet URL to connect
The first screen: one text field, one button. No dashboard onboarding. No questionnaire.
Step 2 · save and go· synced
JobBored settings: the URL is filled and the Sheet connection is ready to save
Once saved, every card move, score, and note writes back to the Sheet. Close the tab and your data is still yours.
ATS Scorecard· local LLM
ATS Scorecard: resume scored for requirements coverage, tone fit, and parseability
Requirements coverage, tone fit, parseability. Flags gaps and suggests rewrites you can actually use.
Daily Brief· May 6, 2026
Daily Brief: two-column executive view of what's due, who owes you a reply, and what has gone cold
What’s due, who owes you a reply, what’s gone cold. Built for the morning coffee.

A kanban for your career. No SaaS landlord required.

Stack

Frontend

Vanilla JSHHTML

Dev

CDcustom dev-server.mjsNNode

Scraper

ExpressCheeriodotenv

Discovery

TypeScript (strip-types)SQLite

Integration

Google Apps ScriptCloudflare WorkerLlaunchd

Testing

Node test runnerAjv

Next project

Elio Intelligence Suite