Skip to content
← Independent work

ApplyWise

Personal tool

A local tool that reads a job posting, tailors my CV to it, mechanically checks the result for invented claims, and only then sends the application.

The problem

Tailoring a CV per application is slow, and handing the job to a model is how a CV quietly starts claiming Kubernetes. The interesting half of this is not the generation — it is refusing to send anything the master CV cannot support.

ApplyWise running locally: the master CV, job input with screenshot upload, two queued applications, and a Process button in dry-run mode
ApplyWise running locally in dry-run mode: everything is generated, nothing is sent. Job-posting screenshots are blurred.
Request pathModel
  1. posting · screenshot or text
  2. vision extraction
  3. tailor against master facts
  4. deterministic validator
  5. PDF render
  6. send
A tailored CV that adds a technology the master CV does not contain is rejected and regenerated once, not sent.
Role
Sole author
Period
2026
Stack
  • Next.js 15
  • TypeScript
  • Anthropic API
  • react-pdf
  • Nodemailer
  • sharp
  • Zod
  • node:test
Status
A personal tool rather than a product. It runs locally against my own CV, that data is gitignored, and there is no public repository or hosted instance.

What I built