Skip to content

rah-emil/cv-match

Repository files navigation

CV Match

CI License Chrome Web Store installs Chrome Web Store rating

Chrome MV3 extension: job posting analysis, tailored CV/cover letter generation via OpenAI, form autofill.

How it works

Popup (Vue 3)                    Content scripts (job page)
├─ Home                          ├─ extractJobText.ts — auto JD / manual picker
│  ├─ Evaluate match             └─ autoFillForm.ts — fill empty inputs
│  ├─ Generate CV + cover letter
│  ├─ Auto-fill form
│  └─ PDF / MD export
├─ Profile — CV upload, avatar, contacts
└─ Settings — API key, models, prompts
         ↕ chrome.storage + tabs.sendMessage
  1. Profile — upload CV (PDF/DOCX) → AI builds cvContext and fills contact fields.
  2. Settings — OpenAI API key (BYOK), model, prompts.
  3. Open a job posting → popup reads the JD (auto-detect or Select block on page).
  4. Evaluate match — score 0–10. Generate CV — CV + cover letter + fit notes. Auto-fill — empty form fields from profile.

Match and generation use cvContext only; raw CV text is not stored after analysis.

Development

pnpm install
pnpm dev         # HMR, outputs to dist/
pnpm build       # production → dist/

Tests

pnpm test        # vitest
pnpm check       # tsc + tests + build

Load in Chrome (manual)

  1. pnpm build (or pnpm dev while developing)
  2. chrome://extensionsDeveloper modeLoad unpacked
  3. Select the dist/ folder in the repo root
  4. Click the CV Match toolbar icon to open the popup

Reload the job page after content script changes.
Open the popup via the extension icon only — otherwise chrome.storage is unavailable.

Chrome Web Store

Only manual flow at the moment

About

No description, website, or topics provided.

Resources

License

Stars

1 star

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors